Supportnet / Forum / Tabellenkalkulation
Abfrage auf ABBRUCH in InputBox
Frage
Hallo,
brauche mal wieder Hilfe vom Supportnet!
Wie kann ich in VBA genau abfragen, ob der Benuzter bei der InputBox ABBRUCH gedrückt hat?
Beispiel:
Dim v as Variant
v = ""
v = InputBox("mein Thema", "mein Titel)
if v = ???? ABBRUCH??? then
... tue, was hier getan werden muss, leerer input ist auch erlaubt
end if
Wer kann mir hier einen Tipp geben?
danke, Angelika
Antwort 1 von Beverly
Hi Angelika,
versuche es mit diesem Code
Bis später,
Karin
versuche es mit diesem Code
Dim v As Variant
Dim strAbfrage As String
v = InputBox("mein Thema", "mein Titel")
If v = "" Then
strAbfrage = MsgBox("", vbYesNo, "Sie haben keinen Wert eingegeben. Wollen Sie fortfahren?")
If strAbfrage = vbYes Then
' dein weitere Code was ausgeführt werden soll
End If
End If
Bis später,
Karin
Antwort 2 von waltrude
Zitat:
Wie kann ich in VBA genau abfragen, ob der Benuzter bei der InputBox ABBRUCH gedrückt hat?
Wie kann ich in VBA genau abfragen, ob der Benuzter bei der InputBox ABBRUCH gedrückt hat?
bei vba kann man nicht zwischen leereingabe und abbruch unterscheiden. das geht nur bei höherentwickelten sprachen, wie vbs. :-P
ansonsten siehe karin^^
lg
Antwort 3 von user3
Hallo Karin,
danke für die Antwort, so würde es funktionieren.
Ich möchte dem Benutzer eine weitere Abfrage ersparen und deshalb direkt abfragen, ob der Benutzer ABBRUCH gedrückt hat (möglicht ohne Workaround).
Geht das denn in VBA und wenn ja, wie??
Liebe Grüße, Angelika
danke für die Antwort, so würde es funktionieren.
Ich möchte dem Benutzer eine weitere Abfrage ersparen und deshalb direkt abfragen, ob der Benutzer ABBRUCH gedrückt hat (möglicht ohne Workaround).
Geht das denn in VBA und wenn ja, wie??
Liebe Grüße, Angelika
Antwort 4 von user3
Hallo Waltrude,
Danke, schade, dass das nicht geht.
danke für alle Inputs, Lg, Angelika
Danke, schade, dass das nicht geht.
danke für alle Inputs, Lg, Angelika
Antwort 5 von schnallgonz
Salve
Wenn der Benutzer "Falsch" eingibt, erfolgt auch allerdings auch ein Abbruch.
gruß
schnallgonz
v = Application.InputBox ("mein Thema", "mein Titel")
'falls Klick auf "Abbrechen", keine Aktion und Abbruch
If v = "Falsch" Then Exit Sub
Wenn der Benutzer "Falsch" eingibt, erfolgt auch allerdings auch ein Abbruch.
gruß
schnallgonz
Antwort 6 von waltrude
man ersetze
durch
und dann geht es auch bei der Eingabe von "Falsch"
ps:
1. asche über mein haupt
2. ein mann im thread hilft manchmal ;-)
3. trotzdem ist es bei vbs eleganter gelöst :-P
lg
If v = "Falsch"
durch
If VarType(v) = vbBoolean And v = "Falsch"
und dann geht es auch bei der Eingabe von "Falsch"
ps:
1. asche über mein haupt
2. ein mann im thread hilft manchmal ;-)
3. trotzdem ist es bei vbs eleganter gelöst :-P
lg
Antwort 7 von alterHase
Hi,
Alternativ könntest Du Dir eine eigene Inputbox basteln.
Eine Userform, ein Textfeld, ein label und zwei Schaltflächen - fertig ist die (Input)Bastelbox.
Damit läßt sich dann beinahe jedes Erreignis abfangen oder interpretieren.
viel Erfolg
alterHase
Alternativ könntest Du Dir eine eigene Inputbox basteln.
Eine Userform, ein Textfeld, ein label und zwei Schaltflächen - fertig ist die (Input)Bastelbox.
Damit läßt sich dann beinahe jedes Erreignis abfangen oder interpretieren.
viel Erfolg
alterHase
Antwort 8 von waltrude
ps die 2te:
reicht eigentlich auch, denn der user kann ja keinen typ boolean eingeben eingeben
If VarType(v) = vbBoolean Then
reicht eigentlich auch, denn der user kann ja keinen typ boolean eingeben eingeben
Antwort 9 von user3
Hi schnallgonz,
im debugger sehe ich V vom Typ Variant/String mit Value ""
Ich habe beim Test in der Inputbox gleich ABBRUCH gedrückt und v war vorher NICHT initialisiert.
Was mache ich falsch??
Gruß, Angelika
im debugger sehe ich V vom Typ Variant/String mit Value ""
Ich habe beim Test in der Inputbox gleich ABBRUCH gedrückt und v war vorher NICHT initialisiert.
Was mache ich falsch??
Gruß, Angelika
Antwort 10 von schnallgonz
Hi Angelika,
mit diesem Code funzt es:
gruß
schnallgonz
mit diesem Code funzt es:
Sub InputTest()
Dim v As String
v = ""
v = Application.InputBox("mein Thema", "mein Titel")
If v = "Falsch" Then
MsgBox "ha"
End If
End Sub
gruß
schnallgonz
Antwort 11 von user3
Hi,
danke, jetzt geht es!!!!!
Ich hatte vorher nur ein InputBox, da lieferte mir EXCEL immer
ein "" von der Funktion InputBox.
Mit
v =m Application.InputBox ...
geht es! Auch ein
If varType (v) = vbBoolean
geht nun
Merci an alle
hat mir sehr geholfen :-)
Lg, Angelika
danke, jetzt geht es!!!!!
Ich hatte vorher nur ein InputBox, da lieferte mir EXCEL immer
ein "" von der Funktion InputBox.
Mit
v =m Application.InputBox ...
geht es! Auch ein
If varType (v) = vbBoolean
geht nun
Merci an alle
hat mir sehr geholfen :-)
Lg, Angelika