Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema OptionButton
BildScreenshot zu OptionButton OptionButton-Seite mit Beispielarbeitsmappe aufrufen

Schlaufe Do Loop

Betrifft: Schlaufe Do Loop von: Andreas
Geschrieben am: 16.09.2004 08:21:10

Hallo zusammen,

ich habe hier ein Formular mit 4 Auswahlmöglichkeiten die jeweils einen anderen Wert in Variable "a" speichern.
Jetzt sollte wenn keine Auswahl getroffen wird die Schlaufe so lange wiederholen bis eine der 4 Möglichkeiten ausgewählt wurde. Erst dann weiter Sprung zum nächsten Formular.

Wie muss ich die Schlaufe programmieren.

Private Sub OK_Click()
If OptionButton1 = True Then
    a = 10
ElseIf OptionButton2 = True Then
    a = 20
ElseIf OptionButton3 = True Then
    a = 30
ElseIf OptionButton4 = True Then
    a = 40
End If
If a < 1 Then
    meldung = "Sie müssen eine Auswahl treffen"
    MsgBox meldung
End If
    Range(d7) = a

    Me.Hide
End Sub




Danke für jeden Tipp.

Gruss Andreas
  


Betrifft: AW: Schlaufe Do Loop von: Marcl
Geschrieben am: 16.09.2004 08:29:57

Hallo Andreas,

hab´s aber nicht getestet!!!

Private Sub OK_Click()
Do While a < 1
If OptionButton1 = True Then
    a = 10
ElseIf OptionButton2 = True Then
    a = 20
ElseIf OptionButton3 = True Then
    a = 30
ElseIf OptionButton4 = True Then
    a = 40
End If
If a < 1 Then
    meldung = "Sie müssen eine Auswahl treffen"
    MsgBox meldung
End If
Loop
    Range(d7) = a
Me.Hide
End Sub


Gruß
Marcl


  


Betrifft: AW: Schlaufe Do Loop von: Basti
Geschrieben am: 16.09.2004 09:20:44

Marcl bei dir läuft der gleich auf nen Fehler, weil a erst mal bestimmt werden muss.
a = 1 is dann die letzte if verschachtelung wieder verkehrt.

Denke das von mir solle aber gehen.


  


Betrifft: AW: Schlaufe Do Loop von: Basti
Geschrieben am: 16.09.2004 09:19:09

Private Sub OK_Click()
a = 1
Do while a > 1
If OptionButton1 = True Then
    a = 10
ElseIf OptionButton2 = True Then
    a = 20
ElseIf OptionButton3 = True Then
    a = 30
ElseIf OptionButton4 = True Then
    a = 40
End If
If a = 1 Then
    meldung = "Sie müssen eine Auswahl treffen"
    MsgBox meldung
End If
loop
    Range(d7) = a

    Me.Hide
End Sub


probier mal aus

Gruss Basti


  


Betrifft: AW: Schlaufe Do Loop von: Andreas
Geschrieben am: 16.09.2004 13:32:08

Hallo Basti

habe es ausprobiert, aber damit ende ich auch in einer Endlosschlaufe.

Bin noch am ausprobieren.

Gruss Andreas


  


Betrifft: AW: Schlaufe Do Loop von: Marcl
Geschrieben am: 16.09.2004 14:23:23

Hi Basti,

ich glaube, da liegt der Fehler

Do while a <= 1


so sollte die Schleife nicht endlos laufen

Gruß
Marcl