Frage zum OptionButton
#1
OB = OptionButton

Code:
If OptionButton22.Value = True And OptionButton31.Value = True Then
   
End If

Ich habe folgende Situation:
Die Bedingung steht mitten in einem langen Code.
Ich klicke auf einen der beiden OB. Jetzt wird der gesamte Code von oben neu durchlaufen,
kommt an diese Stelle mit der IF...THEN an und prüft die Bedingung.

Die Bedingung ist nicht erfüllt, weil ja nur einer der beiden OB Wahr ist.
Also wird auch das in der IF..THEN auch nicht ausgeführt.... Soweit so gut.

Jetzt klicke auf den anderen OB. Der gesamte Code wird wieder von oben an durchlaufen.
Jetzt aber sind beide OB auf WAHR. Und nun ist die Bedingung erfüllt und die IF...THEN müsste
ausgeführt werden....
Tut sie aber nicht.....

Kann man grundsätzlich keine 2 OB auf TRUE or FALSE in einer IF...THEN Abfrage bringen?
Kann mir da jemand helfen?
Danke
Top
#2
Hallo Achim,

(21.02.2018, 21:22)maine-coon schrieb: Jetzt klicke auf den anderen OB. Der gesamte Code wird wieder von oben an durchlaufen.
Jetzt aber sind beide OB auf WAHR. Und nun ist die Bedingung erfüllt und die IF...THEN müsste
ausgeführt werden....
Tut sie aber nicht.....

ich gehe mal davon aus, dass sich die beiden OptionsButton nicht in unterschiedlichen Gruppen/Frames befinden, dann können beide OptionsButton nicht wahr sein.
Gruß Stefan
Win 10 / Office 2016
Top
#3
Hallo Stefan,

doch, doch. Ich meiner UF gibt es 6 Frames mit OptionButton.
Aber in all meinen vielen Bedingungen gab es bisher noch keine,
wo ich 2 OptionButton auf TRUE/FALSE in einer AND Logik hatte.

Vielleicht muss ich mir ein kleines Hilfselement durch 2 Variable einbauen
und über einen Umweg diese geklickte Konstellation abfragen zu können.
Top
#4
Hallo Achim,

und die beiden OptionButtons befinden sich im gleichen Frame oder verschiedenen? Im ersten Fall, können die beiden OptionButtons nicht gleichzeitig wahr sind, im zweiten sollte VBA die Bedingung abarbeiten.
Gruß Stefan
Win 10 / Office 2016
Top
#5
Hallo Stefan,

Frame1 hat 4 OB
Frame2 hat 7 OB
Und die Abfrage betrifft einen OB aus Frame1 und den anderen OB aus Frame2.
Top
#6
Hallo Achim,

dann können beide wahr sein und somit wäre die Bedingung erfüllt. Da ich jetzt nicht weiß, was Du in deiner Bedingung hast, die Frage

Code:
If OptionButton22.Value = True And OptionButton31.Value = True Then
   MsgBox "OptionButton22 " & OptionButton22.Value & " und OptionButton31 " & OptionButton31.Value    
End If

erscheint die MsgBox?
Gruß Stefan
Win 10 / Office 2016
Top
#7
Hallo zusammen,

die Frage ist doch vielleicht eher, mit welchen Ereignis Achim seine Routine startet, oder?


Gruß Carsten

PS:
Unabhängig davon kann man gern kürzen auf:
Code:
   If Me.OptionButton22 And Me.OptionButton31 Then
      MsgBox "Huhu, da bin ich"
   End If
Denn dann sind beide wahr ...
Top
#8
Neue Erkenntnisse.
Die MsgBox wird nicht angezeigt.

Ich habe einfach mal 2 andere OB aus 2 den gleichen Frames genommen.
Jetzt wird die MsgBox gezeigt.
Also, die IF....THEN Abfrage ist machbar und funktioniert.

Ich muss jetzt mal suchen WO einer der beiden OB wieder auf False gesetzt wird.

Danke für die Infos zu meinem Anliegen...
Top
#9
Hallo Achim,

(22.02.2018, 11:53)maine-coon schrieb: Ich muss jetzt mal suchen WO einer der beiden OB wieder auf False gesetzt wird.

setze dir dazu Haltepunkte (F9-Taste).
Gruß Stefan
Win 10 / Office 2016
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste