Office: Textbox Datum (vor)-Formatierung

Helfe beim Thema Textbox Datum (vor)-Formatierung in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, liebe Helferlinge... Vielleicht könnt ihr mir mal wieder bei folgendem Problem helfen: Habe eine Textbox auf einem Usf, wo ein datum... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Berste, 16. Januar 2010.

  1. Textbox Datum (vor)-Formatierung


    Hallo zusammen, liebe Helferlinge...
    Vielleicht könnt ihr mir mal wieder bei folgendem Problem helfen:

    Habe eine Textbox auf einem Usf, wo ein datum eingegeben werden soll. Damit man da nicht nen Text eingibt oder jedes Datum nen anderes Format hat, hätt ich das gern nach dem Prinzip TT.MM.JJJJ !!!

    Bei mir sieht es so aus:

    Dim Datum As Date

    Private Sub txb_datum_Change()
    txb_datum.Value = Format(Datum, "dd.mm.yyyy")
    End Sub

    Sobald ich aber nun etwas in die txb eingebe, erscheint gleich 30.12.1899...
    Hab ich die Variable falsch geklariert !?
    Oder ...txb.value = format... an der falschen stelle (weil muss ins usf oder so) !?
    Oder ist die Anweisung falsch !?

    Ich hoffe, ihr könnt mir helfen...

    :)
     
  2. Hi,

    dein Code ist Käse. Die Variable "Datum" enthält doch keinen Wert!

    Ausserdem ist das nicht so einfach, dafür gibt's ja schließlich geeignete
    Steuerelemente wie den DTPicker.

    Eine endgültige Absicherung ist schwierig, aber mit folgendem Code
    erreichst du zumindet eine geisse Sicherheit.

    ' **********************************************************************
    ' Modul: UserForm1 Typ: Userform
    ' **********************************************************************

    Option Explicit

    Private Sub txb_datum_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    If Len(txb_datum) < 10 Then
    MsgBox "Ungültiges Datum!"
    Cancel = True
    Else
    txb_datum = Format(CDate(DateSerial(Right(txb_datum, 4), Mid(txb_datum, 4, 2), _
    Left(txb_datum, 2))), "dd.MM.yyyy")
    End If
    End Sub

    Private Sub txb_datum_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    Select Case Len(txb_datum)
    Case 0
    Select Case KeyAscii
    Case 48 To 51
    Case Else
    KeyAscii = 0
    End Select
    Case 1
    If Clng(txb_datum) > 2 Then
    Select Case KeyAscii
    Case 48, 49
    Case Else: KeyAscii = 0
    End Select
    Else
    Select Case KeyAscii
    Case 48 To 57
    Case Else: KeyAscii = 0
    End Select
    End If
    Case 2, 5
    Select Case KeyAscii
    Case 44, 46, 47: KeyAscii = 46
    Case Else: KeyAscii = 0
    End Select
    Case 3
    Select Case KeyAscii
    Case 48, 49
    Case Else: KeyAscii = 0
    End Select
    Case 4
    If Clng(Mid(txb_datum, 4, 1)) = 0 Then
    Select Case KeyAscii
    Case 48 To 57
    Case Else: KeyAscii = 0
    End Select
    Else
    Select Case KeyAscii
    Case 48 To 50
    Case Else: KeyAscii = 0
    End Select
    End If
    Case 6 To 10
    Select Case KeyAscii
    Case 48 To 57
    Case Else: KeyAscii = 0
    End Select
    Case Else: KeyAscii = 0
    End Select
    End Sub
     
    josef e, 17. Januar 2010
    #2
  3. Danke für die schnelle Antwort !!!
    Leider hilft mir dein Code nicht, aus 2 Gründen: 1. Ich brauch das für die Uni, bin VBA-Neuling und mein Lehrer würde wissen, dass ich das nie geschrieben habe... 2. versteh ich es auch nicht, nicht mal so ungefähr...

    So falsch kann doch mein Ansatz eigentlich nicht sein !? immerhin schreibt er mir ja schon ein datum im richtigen Format... Nur halt ein falsches Datum ;(
     
  4. Textbox Datum (vor)-Formatierung

    Moin, Berste,

    mit schöner Regelmäßigkeit nutzt Du das falsche Ereignis für einen Vorgang: jede Änderung in der Textbox löst Dein verwendetes Ereignis wieder aus. Sepp hat aufgezeigt, wie man als Eingaben nur Zahlen und Punkte zulässt.

    Alternativ kannst Du für die Textbox unter Eigenschaften im VBE bei ControlTipText einen Hinweis für die Eingabe in der Form von Bitte im Format 18.01.2010 eingeben und für das Verlassen den folgenden Code verwenden:

    Code:
    Dann solltest Du aber Dein Change-Ereignis auskommentieren (mit dem Einsatz des Symbols aus der Leiste Bearbeiten in der VBE nach Markieren).
     
  5. Hey Jinx...
    Hast recht, hätte vielleicht sagen sollen, dass ich Anfänger bin und ne kleine Hilfestellung brauche *Smilie Aber Sepp, trotzdem danke *wink.gif*

    Vielen dank für den Code... Ich hab verstanden was passiert und konnte ihn sogar noch etwas passender abändern... DieFunktion des ControlTip kannte ich noch nicht, also gleich noch was dazu gelernt *wink.gif*

    Danke für eure Mühe, ihr Experten *wink.gif*
    Habt mir wirklich geholfen !!! Liebe Grüße
     
Thema:

Textbox Datum (vor)-Formatierung

Die Seite wird geladen...
  1. Textbox Datum (vor)-Formatierung - Similar Threads - Textbox Datum Formatierung

  2. TextBox mit Datum und Fehlermeldung ... V2.0

    in Microsoft Excel Hilfe
    TextBox mit Datum und Fehlermeldung ... V2.0: Hallo zusammen, ich habe, nachdem ich mit meiner Version aus dem vorherigen Beitrag nicht mehr weitergekommen bin, versucht die Datumseingabe über ein Dropdownmenü zu regeln. Jetzt ergibt sich...
  3. TextBox mit Datum und Fehlermeldung

    in Microsoft Excel Hilfe
    TextBox mit Datum und Fehlermeldung: Hallo zusammen, ich stehe gerade auf dem Schlauch und sehe wahrscheinlich den Wald vor lauter Bäumen nicht. In einer TextBox darf nur ein Datum wiedergegeben werden, wenn nicht, kommt eine...
  4. Textbox Datum als Zahl

    in Microsoft Excel Hilfe
    Textbox Datum als Zahl: Hallo , ich versuche das über eine TextBox anhand eines Datums Inhalte gesucht werden . Allerdings scheitere ich an dem Format . Das Datum wird mir immer als Text wiedergegeben . Momentan habe...
  5. Textbox mit Datum auf Inhalt prüfen

    in Microsoft Excel Hilfe
    Textbox mit Datum auf Inhalt prüfen: Hallo ihr Lieben, ich habe ein Problem im VBA. Ich möchte überprüfen ob eine Textbox voll oder leer ist. Dies versuche ich mit einer If then Else - Funktion. Leider funktioniert dass nur bei den...
  6. Textbox Eintrag als Datum übergeben

    in Microsoft Excel Hilfe
    Textbox Eintrag als Datum übergeben: Hallo an Alle, da mir in letzter Zeit hier mehrfach schnell und sehr gut geholfen wurde, meine Kenntnisse in VBA aber immer noch, aus meiner Sicht, minimal sind, möchte ich bei einem weiteren...
  7. TextBox mit Datum als Formatierung

    in Microsoft Excel Hilfe
    TextBox mit Datum als Formatierung: Hallo Community, über eine auf ein UserForm vorhandene TextBox kann der User ein Datum eingeben. Dieser Wert wird anschließend an eine bestimmte Zelle der aktive Zeile übergeben. Schlussendlich...
  8. automatisches Anpassen der Textbox Datum, wenn sich Werte in Comboboxen ändern

    in Microsoft Excel Hilfe
    automatisches Anpassen der Textbox Datum, wenn sich Werte in Comboboxen ändern: Hallo, ich habe eine Frage und ein kleines Problem und ich vielleicht ist es auch nur eine Kleinigkeit. Bin noch nicht so gut in Umgang mit VbA. Ich habe mir eine Userform gebaut, wo ich mir...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden