StrPtr
10.09.2010 17:26:49
Ramses
Hallo
... heisst das Zauberwort oder Application.Inputbox
Hier mal ein paar Varianten was da so alles passieren kann
Sub testIB()
Dim strEingabe As Variant, nEingabe As Long
strEingabe = InputBox("Geben Sie eine Zahl ein", "Zahltest 1", 1)
If IsNumeric(strEingabe) Then
strEingabe = CLng(strEingabe)
MsgBox "Eingabe einer Zahl: " & strEingabe
End If
strEingabe = InputBox("Geben Sie anstelle einer Zahl einen Text ein", "Zahltest 2", "Test")
If IsNumeric(strEingabe) Then
strEingabe = CLng(strEingabe)
MsgBox strEingabe
End If
If Not IsNumeric(strEingabe) Then
MsgBox "Keine Zahl eingegeben"
End If
strEingabe = InputBox("Lassen Sie das Feld leer und klicken Sie auf OK", "Zahltest 3", "")
If IsNumeric(strEingabe) Then
strEingabe = CLng(strEingabe)
MsgBox strEingabe
End If
If Not IsNumeric(strEingabe) Then
MsgBox "Keine Zahl eingegeben"
End If
If strEingabe = "" Then
MsgBox "Nichts eingegeben"
End If
strEingabe = InputBox("Schreiben Sie eine Zahl und klicken Sie auf abbrechen", "Zahltest 4", "5")
If IsNumeric(strEingabe) Then
strEingabe = CLng(strEingabe)
MsgBox "Zahl erkannt trotz Abbrechen: " & strEingabe
End If
If Not IsNumeric(strEingabe) Then
MsgBox "Zahl eingetragen und trotz ABBRECHEN als ""NOT ISNUMERIC"" erkannt"
End If
If strEingabe = "" Then
MsgBox "Sie haben nichts eingegeben." & vbCrLf & _
"Eine Unterscheidung auf leere Eingabe mit OK oder ABBRECHEN ist unmöglich"
End If
'Erkennen der ABBRECHEN Taste mit StrPtr
If StrPtr(strEingabe) = 0 Then
MsgBox "Sie haben jedoch trotz Eingabe von : """ & strEingabe & """ auf Abbrechen geklickt"
End If
'Alternativ und die beste Variante
'Infos zu Type siehe VBA Hilfe
strEingabe = Application.InputBox("Geben Sie einen Text ein und versuchen Sie mit OK zu beenden", "Zahltest mit App-Inputbox", Type:=1)
If strEingabe = False Then MsgBox "Abbrechen angeklickt"
End Sub
Gruss Rainer