# Habe ein simples Problem bei If-Funktion in VBA



## Reast_91 (3. Januar 2008)

Hallo!

Ich besuche die HAK und habe nun angefangen mich mit Visual Basic auseinanderzusezten.
Folgendes Problem trat dabei auf:

Es handelt sich um ein Fahrtenbuch in Excel. Als erster erscheint eine InputBox in der folgendes steht: Wollen Sie das Fahrtenbuch starten?
Ich habe die Antwort "Ja" als 1 definiert,
und die Antwort "Nein" als 2 definiert.

Aber wenn ich weder 1 noch 2 eingebe dann soll solange eine InputBox erscheinen bis ich entweder 1 oder 2 eingegeben habe. Ich habe die Funktion unten kopiert:

If Not (b) = 1 Or 2 Then
Do
Eingabe = InputBox("Sie müssen entweder 1 oder 2 eingeben! 1 = Ja, 2 = Nein")
Loop Until Eingabe = 1 Or 2
End If

Diese Funktion funktioniert aber nicht!?

Vielen Dank im Voraus
mfg Reast_91


----------



## wincnc (3. Januar 2008)

Hallo

Das mit Do Loop kannst Du Dir sparen.

```
Dim Eingabe As String

  Eingabe = InputBox("Sie müssen entweder 1 oder 2 eingeben! 1 = Ja, 2 = Nein")
  Select Case Eingabe
    Case "1"
      MsgBox "Sie haben 1 eingegeben."
    Case "2"
      MsgBox "Sie haben 2 eingegeben."
    Case Else
      MsgBox "Bitte geben Sie nur 1 oder 2 ein."
  End Select
```

Warum machst Du denn nicht eine MsgBox?
Beispiel:

```
If MsgBox("Soll das Fahrtenbuch gestartet werden?", vbQuestion + vbYesNo) = vbYes Then
    MsgBox "Fahrtenbuch wird gestartet."
  Else
    MsgBox "Fahrtenbuch wird NICHT gestartet."
  End If
```


----------



## Reast_91 (3. Januar 2008)

Danke hab es fast geschafft!

Nur schließt es mir die Excel Datei nicht. Ich habe wieder die geänderte Funktion kopiert:

Vorname = InputBox("Geben Sie bitte Ihren Vornamen ein")
Range("J5").Select
ActiveCell.FormulaR1C1 = Vorname

If MsgBox(Vorname & " soll das Fahrtenbuch gestartet werden?", vbQuestion + vbYesNo) = vbYes Then
    MsgBox "Fahrtenbuch wird gestartet."
  Else
    MsgBox ("Auf wiedersehen " & Vorname & "!")
    Application.Quit 'Es kommt die MsgBox("Auf wiedersehen...."), aber anschließend                schließt es mir nicht das Excel Dokument?
  End If

Danke im Voraus mfg


----------

