Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: Dietmar am Mai 02, 2015, 08:47:26

Titel: Zweimal wenn
Beitrag von: Dietmar am Mai 02, 2015, 08:47:26
Hallo zusammen,
ich möchte in einem Textfeld zwei Wennanweisungen miteinander verschachtel und bin am verzweifeln

=Wenn([Ziehverlauf]="LK";Int([MatLänge]/[Formular]![Länge]))*(Int([MatBreite]/[Formular]![Breite]))
und
Wenn([Ziehverlauf]="KK";Int([MatBreite]/[Formular]![Länge]))*(Int([MatLänge]/[Formular]![Breite]))
jede funktioniert in einzelner Form und bringt auch das richtige Ergebnis, setze ich sie wie folgt zusammen, bekomme ich einen Fehler " Ausdruck ist syntaktisch falsch"

=Wenn([Ziehverlauf]="LK";Int([MatLänge]/[Formular]![Länge]))*(Int([MatBreite]/[Formular]![Breite]));Wenn([Ziehverlauf]="KK";Int([MatBreite]/[Formular]![Länge]))*(Int([MatLänge]/[Formular]![Breite]))))

Hat jemand eine Ahnung warum?
Titel: Re: Zweimal wenn
Beitrag von: DF6GL am Mai 02, 2015, 09:24:45
Hallo,

ja,

die Klammersetzung stimmt nicht. 
Titel: Re: Zweimal wenn
Beitrag von: Dietmar am Mai 02, 2015, 11:04:23
Hallo Franz,

Danke für deine Antwort!
Kannst du mir einen Tipp geben wie ich die Klammern richtig setze, habe schon alle möglichen varianten probiert.
Und was ich gar nicht verstehe, warum funktioniert diese Formel in einer Abfrage
Titel: Re: Zweimal wenn
Beitrag von: DF6GL am Mai 02, 2015, 11:21:15
Hallo,

wo willst Du den Ausdruck denn verwenden?
"[Formular]!" ist zudem falsch , wenn der Ausdruck im Steuerelementinhalt eines Form-Textfeldes verwendet wird.

=Wenn(
            [Ziehverlauf]="LK"    ;     
            Int([MatLänge]/  [Formular]!    [Länge])    )    *   (    Int([MatBreite]/  [Formular]!   [Breite])   )    ; 
            Wenn(
                    [Ziehverlauf]="KK"     ;
                    Int([MatBreite]/   [Formular]!     [Länge])  )   *    (     Int([MatLänge]/   [Formular]!   [Breite])     ;   Null
                     )   
          )
Titel: Re: Zweimal wenn
Beitrag von: Dietmar am Mai 02, 2015, 13:08:51
Hallo Franz,

ich glaube ich habs, deine Formel funktioniert nur muss ich bei der Breite doch das Formular vorgeben und da weiß ich nicht warum.
Als Test habe ich in der Textbox die Werte einzeln eingegeben = [Länge] ergab den richtigen Wert Breite einen Wert den ich nicht zuordnen kann mit =Formular![Breite] den richtigen.


Titel: Re: Zweimal wenn
Beitrag von: DF6GL am Mai 02, 2015, 13:27:10
Hallo,
die Namen im Ausdruck beziehen sich auf Formular-Textfelder und müssen demzufolge existieren. Wenn es nur mit "Formular" funktioniert, könnte es sein, dass das entspr. Formular-Textfeld nicht gleichlautend ist.