Problem bei Variable

XIDOS

Grünschnabel
Hi Leute hab mal wieder nen Problem
Ich bin dabei meine Slotmachine noch etwas zu erweitern und möchte wenn nichts eingegeben wurde, die Variable also leer ist, das eine MsgBox erscheint und sagt Sie haben nichts eingegeben allerdings geht das nich bei mir:
Code:
If Benutzerzahl >= 10 Then
    MsgBox "Das geht nicht! Du musst eine Einstellige Zahl eingeben! Drücke 'Reset' um eine neue Zahl einzugeben"
    tmr_takt.Enabled = False
    tmr_begrenzung.Enabled = False
    cmd_reset.Enabled = True
    cmd_start.Enabled = False
    lbl_count = ""
    lbl_zahl = ""
Elseif Benutzerzahl = "" Then
    MsgBox "Das geht nicht!
Else:
cmd_reset.Enabled = False
cmd_stop.Enabled = True
cmd_start.Enabled = False
lbl_eingabe.Visible = True
lbl_warten.Visible = True
lbl_zufallszahl.Visible = True
lbl_treffer.Visible = False
lbl_glueck.Visible = False
End If
 
Zuletzt bearbeitet:
Wenn ich mir den kurzen Codeteil so durchlese, glaube ich, dass die Variable Benutzerzahl eine Zahlenvariable ist (also Integer, Long, ...). Du versuchst aber die Variable auf einen leeren String abzufragen, daher wird der Fehler resultieren. Probier mal, das ganze so abzufragen:
Code:
Elseif Benutzerzahl = vbNull Then
    MsgBox "Das geht nicht!
gebe aber (mangels VB-Testmöglichkeit') keine Garantie drauf.


Der Doc!
 
Wie kommst du zu Benutzerzahl? Wird da ein Wert aus einer Textbox übergeben? Wenn ja, dann frag die Textbox ab, ob ein Wert drinnen steht und reagiere drauf.

Alternativ könntest du im KeyPress-Ereignis der Textbox den Button zum weitergehen erst freigeben, wenn mindestens ein Zeichen eingegeben ist.


Der Doc!
 
Ja ist ne Textbox
Und wie frage ich das ab oder wie gebe ich die Textbox frei wenn eine Zahl eingegeben wird?
Danke für die Hilfe
 
MsgBox "Das geht nicht!
Da fehlt meines Erachtens nach auch noch ein Hochkomma ;)
Und du hast gar nicht angegeben, was für ein MSG-Typ erscheinen soll.


Elseif Benutzerzahl = "" Then
MsgBox "Bitte alle Felder ausfüllen!", vbOkOnly, "Fehler bei Eingabe"
Hier wird über vbOkOnly nur ein OK-Button ausgegeben.
Der Text in den ersten Hochkommas ist der Text, der ausgegeben wird.
Der Text in den zweiten Hochkommas ist der text, der in der Titelzeile erscheint.

Hoffe, ich konnte helfen ;)
 
Textbox!

hallo,
also der fehler lieg meines erachtens darin, dass benutzerzahl keine Variable sondern ein Textbox-Objekt ist, wobei benutzerzahl den namen angibt.
jedes objekt, so auch das objekt benutzerzahl hat verschiedene eigenschaften, dazu gehört bei textbox-objekten die eigenschaft .text , die den aktuellen text einer textbox abfragt oder festsetzt.

die abfrage, ob das textfeld benutzername leer ist muss also lauten:
Code:
if benutzerzahl.text="" then msgbox("Ist leer")

gruß
thekorn
 
Zurück