Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
976to980
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
976to980
976to980
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Textbox 5 Stellig

Textbox 5 Stellig
09.05.2008 12:06:00
Kurt
Hey Zusammen, ich habe folgendes Makro für die Eingabe der Zahlen, klappt alles.
Nun möchte ich gern den Anwender aufzuforden mindestens 5 Ziffern einzugeben, ansonsten
soll die Textbox wieder selektiert werden.

Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If IsNumeric(TextBox1) = False And TextBox1  "" Then
MsgBox "Sie dürfen nur Ziffern eingeben,         " & Chr(13) & Chr(13) & _
"bitte denken SIE daran,    5 stellige Eingabe !!!      ", _
vbCritical, "Error !!!"
TextBox1 = Left(TextBox1, Len(TextBox1) - 1)
TextBox1 = "00000"
TextBox1.SetFocus
With TextBox1
.SetFocus
.SelStart = 0
.SelLength = Len(.Text)
End With
End If
End Sub



Private Sub TextBox1_AfterUpdate()
If TextBox1.Value = "" Then
TextBox1.Value = "00000"
End If
ActiveCell.Offset(0, 0) = TextBox1.Value
TextBox1 = ActiveCell.Offset(0, 0).Value
TextBox1.SetFocus
With TextBox1
.SetFocus
.SelStart = 0
.SelLength = Len(.Text)
End With
gr KURT P

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Textbox 5 Stellig
09.05.2008 12:47:26
ransi
HAllo Kurt
Schau mal ob du mit anderen Ereignissen mehr Erfolg hast:
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case KeyAscii
    Case 48 To 57
    Case Else:
        KeyAscii = 0
End Select
End Sub



Private Sub TextBox1_LostFocus()
With TextBox1
    If Len(.Text) < 5 Then
        MsgBox "Mindestens 5 Zahlen. Sonst kommst du hier nicht raus"
        .Activate
        .SelStart = 0
        .SelLength = Len(.Text)
    End If
End With
End Sub


ransi

Anzeige
Super Spitze -)
09.05.2008 13:34:00
Kurt
Hey Ransi, funkt Super,Danke.
gr Kurt P

Doch noch einen Fehler
09.05.2008 14:09:28
Kurt
Hey Ransi, habe gerade festgestellt, der Focus nach der Fehlermeldung geht nicht
auf die Textbox1.
Hiermit Reaktion:

Private Sub TextBox1_LostFocus()
With TextBox1
If Len(.Text) 


Habe dann mal so reingesetzt aber wie beschrieben, nach der Fehlermeldung
leider kein Focus, die 5 Nullen werden aber angezeigt:


Private Sub TextBox1_AfterUpdate()
If TextBox1.Value = "" Then
TextBox1.Value = "00000"
End If
ActiveCell.Offset(0, 0) = TextBox1.Value
TextBox1 = ActiveCell.Offset(0, 0).Value
With TextBox1
If Len(.Text) 


gr kurt P

Anzeige
AW: Doch noch einen Fehler
09.05.2008 14:16:00
Peter
Hallo Kurt,
probier mal (ungetestet):

Private Sub TextBox1_AfterUpdate()
If TextBox1.Value = "" Then
TextBox1.Value = "00000"
End If
ActiveCell.Offset(0, 0) = TextBox1.Value
TextBox1 = ActiveCell.Offset(0, 0).Value
With TextBox1
If Len(.Text) 


Gruß Peter

Leider nicht
09.05.2008 19:13:00
Kurt
Hey Peter leider klappt es so auch nicht.
gr kurt p

AW: Leider nicht
09.05.2008 20:43:45
Tino
Hallo,
habe mal estwas getestet, so müsste es gehen.

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Len(TextBox1.Text) 


Gruß
Tino

Anzeige
AW: Leider nicht
09.05.2008 21:57:11
Horst
Hi,
Mist, so kann User die Box nicht verlassen, unzulässige Bevormundung.
mfg Horst

AW: ? OT.
09.05.2008 22:12:24
Tino

Ja aber nur teilweise
10.05.2008 09:54:33
Kurt
Hey Tino,
guten Morgen.
Habe mal reinkopiert, bei mir springt nach der Fehlermeldung die Textbox
immer auf eine "0", komme dann nicht raus.
Gebe dann 5x 11111 ein dann geht es.
gr kurt p

AW: Ja aber nur teilweise
10.05.2008 11:30:00
Gerd
HEYHEYHEYHEY,
nimm einen Commandbutton, dann ist dies überhaupt kein Problem.

Private Sub CommandButton1_Click()
If Len(TextBox1.Text) 


Gruß Gerd

Wieso ? geht doch nicht
10.05.2008 13:44:00
Kurt
Hey Gerd,
wieso CommandButton, die Reaktion soll doch nach der Eingabe in der Textbox1
erfolgen,
gr kurt P

Anzeige
Ich habe die Lösung -)
10.05.2008 14:35:00
Kurt
Hey Zusammen, habe noch ein wenig rummgebastelt, so
funktioniert es:

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Len(TextBox1.Text) 


Schöne Pfingsten
gr kurt P

AW: Commandbutto
10.05.2008 14:44:00
Gerd
Hallo Kurt,
weil dann auch der User selbst überprüfen kann, ob er alle Eingaben getätigt hat,
bevor es weiter geht.
P.S.: Eine andere Anrede als "Hey" wäre sympmatischer. Dies klingt so nach Schreierei.
Gruß Gerd

Dankefür die Info !!!
12.05.2008 10:11:00
Kurt
Guten Morgen Gerd, DANKE für die Info.
gr kurt P

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige