Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

Hab noch Probleme mit Zahl od. Buchstabenprüfung

Forumthread: Hab noch Probleme mit Zahl od. Buchstabenprüfung

Hab noch Probleme mit Zahl od. Buchstabenprüfung
11.02.2004 20:09:23
Lenny
Ich möchte, dass wenn man auf OK drückt meine Textbox1 überprüft wird, ob eine Zahl oder ein Buchstabe drinnen steht; die hab ich schon mit isnumeric(me.textbox1)
Es soll so lange geprüft werden bis eine Zahl drinnen steht. Wie kann ich das machen?
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: solange ok drücken ?? o.t.
11.02.2004 20:11:34
andre
hallo lenny,
was meinst du denn genau?
gruss andre
AW: solange ok drücken ?? o.t.
11.02.2004 20:16:54
Lenny
Ich möchte mittels einer Userform eine Berechnung machen. Mit dem Betätigen der OK-Taste soll die Berechnung ausgeführt werden.
Die Zahlen sollen in Textboxen eingeben werden.
Falls ein Buchstabe in einer Textbox steht, soll nach Betätigung der OK-Taste (CommandButton) die Meldung kommen "Berechnung kann nicht ausgeführt werden" (msgbox) und man soll wieder einen Wert in die Textbox eingeben können. Danach soll wieder die OK-Taste gedrückt werden und die ganze Geschichte wieder überprüft werden, bis wirklich eine Zahl eingeben wird.
Ich hoffe ich hab´s verständlich geschrieben !?!
Anzeige
AW: solange ok drücken ?? o.t.
11.02.2004 20:41:25
andre
hallo lenny,
geht auch nur zahlen zulassen?

Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
'   von L.Vira, kein Komma
'   Eingaben nur Zahlen
Select Case KeyAscii
Case 48 To 57
Case Else: KeyAscii = 0
End Select
End Sub


bei der ok-taste prüfst du gleich am anfang, ob in der textbox überhaupt was steht:

Private Sub CommandButton1_Click()
If TextBox1.Text = "" Then
MsgBox "Zahl eingeben!"
Exit Sub
End If
'Unload.me 'da musst du die zahl in eine public-variable geben
Hide
meinmakro
End Sub

gruss andre
Anzeige
Was heißt...
11.02.2004 20:51:41
Lenny
Nur Zahl zulassen geht auch; was heißt eigentlich hier: "byval" und "case48 to case57".
Wäre gut, wenn du mir die Funktionsweise noch erklären könntest.
Ein Komma müsste man auch eingeben können
11.02.2004 20:55:21
Lenny
Ein Komma müsste man auch eingeben können
AW: Ein Komma müsste man auch eingeben können
11.02.2004 21:09:38
andre

Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case KeyAscii
Case 48 To 57
Case Asc("."), Asc(",")
If InStr(TextBox1, ",") <> 0 Then
KeyAscii = 0
Else
KeyAscii = Asc(",")
End If
Case Else: KeyAscii = 0
End Select
End Sub

gruss andre
Anzeige
Danke..
11.02.2004 21:25:05
Lenny
Danke
AW: danke für die rückmeldug
11.02.2004 21:48:23
andre
hallo lenny,
hab grad noch gemerkt dass du noch was wissen wolltest:
byval bedeutet, dass der wert der variable (hier die eingabe) übergeben wird
cas 49 to 58 ist der ascii-code-bereich für die zahlen, hätte auch schreiben können asc("0") to asc("9") analog wie bei punkt und komma eine zeile tiefer
gruss andre
Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige