Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema CheckBox
BildScreenshot zu CheckBox CheckBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Label
BildScreenshot zu Label Label-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema TextBox
BildScreenshot zu TextBox TextBox-Seite mit Beispielarbeitsmappe aufrufen

Datumsformat in Userform

Betrifft: Datumsformat in Userform von: martin
Geschrieben am: 18.08.2008 15:02:24

Hallo,

ich habe eine ganz einfache Userform mit zwei Textboxen über die möchte ich jeweils ein Datum in
2 vorgegebene Zellen in der Tabelle "Start" eingeben. Das klappt auch gut.

ABER leider erkennt Excel nach dem Eintrag die beiden Werte nicht als Datum - wie muss ich was formatieren damit das klappt ?

Hab schon überall nach einer Lösung gesucht aber nix gefunden - deshalb Danke für einen einfachen Lösungsvorschlag

Martin

Momentan habe ich folgenden Code geschrieben ... der Eintrag in den beiden Zellen B6 und B7 sieht auch wie ein Datumswert in Excel aus, kann aber nicht als solcher weiterverarbeitet werden.

Private Sub CommandButton1_Click()
Unload Me
End Sub



Private Sub TextBox1_Change()
Cells(6, 2) = TextBox1
End Sub



Private Sub TextBox2_Change()
Cells(7, 2) = TextBox2
End Sub


Private Sub TextBox2_AfterUpdate()
TextBox2 = Format(TextBox2, "dd.mm.yy")
End Sub


Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Not IsDate(TextBox2) Then
TextBox2 = ""
Cancel = True
End If
End Sub


Private Sub TextBox1_AfterUpdate()
TextBox1 = Format(TextBox1, "dd.mm.yy")
End Sub


Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Not IsDate(TextBox1) Then
TextBox1 = ""
Cancel = True
End If
End Sub


  

Betrifft: AW: Datumsformat in Userform von: Tino
Geschrieben am: 18.08.2008 15:07:13

Hallo,
Beispiel

Cells(6, 2) = cdate(TextBox1)

Ist in der Textbox aber kein Datumsformat kommt es zum Fehler!

Gruß Tino


  

Betrifft: AW: Datumsformat in Userform von: Peter W
Geschrieben am: 18.08.2008 15:09:29

Servus,

mit DateSerial (Bsp.):

Public Sub basDate()
    Dim sDate As String
    sDate = "18.08.08"
    Cells(1, 1) = DateSerial(--(Right(sDate, 2)), --Mid(sDate, 4, 2), --Left(sDate, 2))
End Sub



MfG

Peter


  

Betrifft: AW: Datumsformat in Userform von: fcs
Geschrieben am: 18.08.2008 15:20:20

Hallo Martin,

das Change_Ereignis für die Textbox zum Ausfüllen der Zellen muss du hier weglassen, da die Eingabe in die Textboxen so als text in die Zellen eingetragen wird. Verwende das Exit_Ereignis, wobei du den Inhalt der Textbox vor dem Eintragen in die Zellen in ein Datum verwandeln muss.

Ungetestet sollte folgende Anpassung funktionieren.

Gruß
Franz

Private Sub CommandButton1_Click()
  Unload Me
End Sub

Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
  If Not IsDate(TextBox2) Then
    TextBox2 = ""
    Cancel = True
  Else
    Cells(7, 2) = CDate(TextBox2)
    TextBox2 = Format(CDate(TextBox2), "DD.MM.YY")
  End If
End Sub

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
  If Not IsDate(TextBox1) Then
    TextBox1 = ""
    Cancel = True
  Else
    Cells(6, 2) = CDate(TextBox1)
    TextBox1 = Format(CDate(TextBox1), "DD.MM.YY")
  End If
End Sub




  

Betrifft: AW: Datumsformat in Userform von: Martin
Geschrieben am: 19.08.2008 09:57:48

Hallo Franz,

super - genauso hatte ich mir das vorgestellt - klappt super

Danke
Martin


 

Beiträge aus den Excel-Beispielen zum Thema "Datumsformat in Userform"