Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
356to360
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
356to360
356to360
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Textbox Format

Textbox Format
04.01.2004 02:49:17
Stefan
Hallo Forum,

ich möchte, dass einer Textbox ein Format zugewiesen wird - Datum Fomat TT:MM:JJJJ - wenn dieses Format nicht eingehlten wird, soll eine msgbox erscheinen.

Ich möchte zudem, dass verschiedene eingaben möglich sind. So dass man z.B. 01012003, 01.01.2003, 1.1.2003, 1.1.03 usw eingeben kann, die eingabe dann automatisch auf das gewünschte Format geändert wird.

Ich danke für Eure Hilfe!

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Textbox Format
04.01.2004 09:48:04
Hajo_Zi
Hallo Stefan

siehe Dir mal folgenden Code an

Dim BoEnter As Boolean


Private Sub TextBox6_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
'   erstellt von Hajo.ziplies@web.de  Stand 01.08.03
'   Datumseingabe  01.01.03;1.1.03 oder komlettes Jahr
'   Eingabe des Tages und des Monat zweistellig werden die Punkte automatisch gesetzt
'   sie können nur gelöscht durch markierung des punktes und der Zahl davor
'   Buchstaben werden ausgeschlossen, nur Zahlen und Punkt
'   die Überprüfung ob Datum erfolgt in 

Private Sub TextBox6_AfterUpdate()
Select Case KeyAscii
Case Asc("0") To Asc("9")
Case Asc(".")
If Len(TextBox6) = 0 Then
KeyAscii = 0
Else
If Len(TextBox6) - Len(Application.Substitute(TextBox6, ".", "")) = 2 Then
KeyAscii = 0
ElseIf Len(TextBox6) > 1 Then
If Mid(TextBox6, Len(TextBox6), 1) = "." Then KeyAscii = 0
Else
KeyAscii = Asc(".")
End If
End If
Case Else
KeyAscii = 0
End Select
End Sub



Private Sub TextBox6_Change()
If BoEnter = True Then Exit Sub
If Len(TextBox6) = 2 Then
If InStr(TextBox6, ".") = 0 And BoEnter = False Then TextBox6 = TextBox6 & "."
ElseIf Len(TextBox6) = 5 Then
If Len(TextBox6) - Len(Application.Substitute(TextBox6, ".", "")) < 2 Then
TextBox6 = TextBox6 & "."
End If
End If
End Sub



Private Sub TextBox6_AfterUpdate()
BoEnter = True
If Right(TextBox6, 1) = "." Then TextBox6 = Mid(TextBox6, 1, Len(TextBox6) - 1)
'   Jahreszahl vom aktuellen Jahr ergänzen falls nicht vorhanden
If Len(TextBox6) - Len(Application.Substitute(TextBox6, ".", "")) = 1 Then
TextBox6 = TextBox6 & "." & Year(Date)
End If
If IsDate(TextBox6.Text) Then
If Format(CDate(TextBox6.Value), "dd.mm.yy") <> TextBox6 Then
MsgBox "Das Datum wurde übersetzt"
End If
TextBox6 = Format(CDate(TextBox6.Value), "dd.mm.yy")
Else
TextBox6 = ""
End If
BoEnter = False
End Sub


Bitte keine Mail, Probleme sollten im Forum gelöst werden.

Microsoft MVP für Excel

Das Forum lebt auch von den Rückmeldungen.
Betriebssystem XP Pro und Excel Version XP Pro


Anzeige
AW: Textbox Format
04.01.2004 15:12:07
Stefan
Hallo Hajo,

das ist ja mal nen langer Code, den ich nicht überschaue.........

Klappt aber soweit. Da ich aber diesen nicht verstehe, muss ich nochmal was fragen. Es ist wichtig, dass das Jahr im Format JJJJ eingegeben wird, da bei Eingabe über 2050 der Wert 1950 eingesetzt wird. Dies darf nicht passieren. Kannst Du mir da vielleicht eine Antwort drauf geben?
Was ich auch nicht verstehe, warum ist es nicht möglich, die Punkte einfach zu löschen?

Vielen Dank, Hajo.
AW: Textbox Format
04.01.2004 16:21:30
Hajo_Zi
Halo Stefan

Du mußt überall

Format(CDate(TextBox6.Value), "dd.mm.yy")
ändern in
Format(CDate(TextBox6.Value), "dd.mm.yyyy")

Die Punkte werden automatisch gesetzt bzw. an der Stelle ist ein Punkt notwendig darum kann er nicht gelöscht werden.

Mit dem Proble habe ich mich vor 4 Monaten mit befast und er lief. Jetzt ist es mir zu Aufwendig das noch mal durchzugehen. Ich sah keinen Grund einen Punlkt zu löschen.

Bitte keine Mail, Probleme sollten im Forum gelöst werden.

Microsoft MVP für Excel

Das Forum lebt auch von den Rückmeldungen.
Betriebssystem XP Pro und Excel Version XP Pro


Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige