Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1384to1388
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Keypressabfragen in eine Funktion auslagern

Keypressabfragen in eine Funktion auslagern
02.10.2014 13:56:26
Ronny
Hallo zusammen,
ich versuche krampfhaft eine Keypressabrage für Textboxen in einer userform in eine Funktion zu pressen. Leider schmiert Excel dann regelmäßig ab.
Wer weiß wie´s geht?
Meine Sub schauen eigentlich ganz einfach aus und funktionieren auch. Aber das muß doch schöner gehen. Leider habe ich mit Funktionen mal so gar keine Ahnung.
Private Sub Breite_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) 'Zahlenfelder prüfen
Select Case KeyAscii
Case Asc("0") To Asc("9")
Case Asc(".")
If InStr(1, UserForm4.Breite.Text, ".") > 0 Then
KeyAscii = 0
End If
Case Else
MsgBox ("nur Zahlen erlaubt")
KeyAscii = 0
End Select
End Sub

Private Sub Hoehe_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) 'Zahlenfelder prüfen
Select Case KeyAscii
Case Asc("0") To Asc("9")
Case Asc(".")
If InStr(1, UserForm4.Hoehe.Text, ".") > 0 Then
KeyAscii = 0
End If
Case Else
MsgBox ("nur Zahlen erlaubt")
KeyAscii = 0
End Select
End Sub

Private Sub Tiefe_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) 'Zahlenfelder prüfen
Select Case KeyAscii
Case Asc("0") To Asc("9")
Case Asc(".")
If InStr(1, UserForm4.Tiefe.Text, ".") > 0 Then
KeyAscii = 0
End If
Case Else
MsgBox ("nur Zahlen erlaubt")
KeyAscii = 0
End Select
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Keypressabfragen in eine Funktion auslagern
02.10.2014 14:05:48
Hajo_Zi
benutze Klassen.

AW: Keypressabfragen in eine Funktion auslagern
02.10.2014 14:06:39
Daniel
Hi
so vielleicht:
Private Sub Breite_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) 'Zahlenfelder prüfen
KeyAscii = NurZahl(KeyAscii, Breite.Text)
End Sub
Private Sub Hoehe_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) 'Zahlenfelder prüfen
KeyAscii = NurZahl(KeyAscii, Hoehe.Text)
End Sub
Private Sub Tiefe_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) 'Zahlenfelder prüfen
KeyAscii = NurZahl(KeyAscii, Tiefe.Text)
End Sub

Function NurZahl(ByVal Wert, ByVal TXT as string) 'Zahlenfelder prüfen
Select Case Wert
Case Asc("0") To Asc("9")
Case Asc(".")
If InStr(1, TXT, ".") > 0 Then
Wert = 0
End If
Case Else
MsgBox ("nur Zahlen erlaubt")
Wert = 0
End Select
NurZahl = Wert
End Function
Gruß Daniel
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige