2.15 Wie lässt sich feststellen, ob der Benutzer bei der InputBox "Abbrechen" gewählt hat?
VB5-VB6
Von: Wolfgang Enzinger [Home]
Einer MsgBox lässt sich ohne weiteres entlocken, welche Schaltfläche der Anwender gewählt hat. Wäre natürlich auch traurig, wenn dem nicht so wäre. Aber auch bei der InputBox wäre es ebenfalls von Nutzen, wenn man ermitteln könnte, ob der Anwender "OK" oder "Abbrechen" gewählt hat.
Man kann, wie folgendes Beispiel zeigt:
Dim strErgebnis As String strErgebnis = InputBox("Gib was ein oder lass es sein:") If StrPtr(strErgebnis) = 0 Then Debug.Print "Der Anwender wählte 'Abbrechen'" Else Debug.Print "Der Anwender wählte 'OK'" End If
Die VB Hilfe versucht hier, einem eine leere Zeichenfolge (="") für eine Null- Zeichenfolge (= uninitialisierter String = vbNullString) zu verkaufen. Zwischen beiden besteht aber ein ein großer Unterschied und genau anhand dieses Unterschieds, kann man auch eindeutig unterscheiden, ob der Anwender "OK" gewählt hat (Rückgabe = leere Zeichenfolge) oder "Abbrechen" (Rückgabe = Null-Zeichenfolge).