Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1628to1632
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
Datum aus TextBox auch als Datum speichern
25.06.2018 09:49:03
Wilfried
Guten Morgen,
ich habe folgende Problemstellung:
In einer Userform befinden sich mehrere TextBoxen. In diesen werden sowohl Text (Adressen) aber auch Einträge als Datum erfasst.
Das Problem besteht darin, dass das Datum in der Tabelle jedoch als Text gespeichert wird. Das würde ich sehr gerne ändern.
Auszug aus dem VBA Code:
'##########################################################
Option Explicit
Option Compare Text
'Wie viele TextBoxen sind auf der UserForm platziert?
Private Const iCONST_ANZAHL_EingabeFELDER As Integer = 65
'##########################################################
'so sieht der Code aus, der alle Inhalte als Text speichert:
Private Sub EINTRAG_SPEICHERN()
Dim lZeile As Long
Dim i As Integer
'Wenn kein Datensatz in der ListBox markiert wurde, wird die Routine beendet
If ListBox1.ListIndex = -1 Then Exit Sub
'Zum Speichern benötigen wir die Zeilennummer des ausgewählten Datensatzes
lZeile = ListBox1.List(ListBox1.ListIndex, 0)
For i = 1 To iCONST_ANZAHL_EingabeFELDER
Tabelle4.Cells(lZeile, i) = Me.Controls("TextBox" & i)
Next i
'####################################################################
Mein Versuch die entsprechenden TextBoxen als Datum zu speichern:
Private Sub EINTRAG_SPEICHERN()
Dim lZeile As Long
Dim i As Integer
'Wenn kein Datensatz in der ListBox markiert wurde, wird die Routine beendet
If ListBox1.ListIndex = -1 Then Exit Sub
'Zum Speichern benötigen wir die Zeilennummer des ausgewählten Datensatzes
lZeile = ListBox1.List(ListBox1.ListIndex, 0)
For i = 1 To iCONST_ANZAHL_EingabeFELDER
Tabelle4.Cells(lZeile, i) = Me.Controls("TextBox" & i)
'Werte als Datum in Tabelle4 (Anfragen) speichern
Tabelle4.Cells(lZeile, 4).Value = CDate(TextBox4)
Tabelle4.Cells(lZeile, 5).Value = CDate(TextBox5)
Tabelle4.Cells(lZeile, 6).Value = CDate(TextBox6)
Tabelle4.Cells(lZeile, 13).Value = CDate(TextBox13)
Tabelle4.Cells(lZeile, 22).Value = CDate(TextBox22)
Tabelle4.Cells(lZeile, 23).Value = CDate(TextBox23)
Next i
For i = 1 To iconst_checkboxen
Tabelle4.Cells(lZeile, i + 75).Value = IIf(Me.Controls("Checkbox" & CStr(i)).Value, "Ja", "Nein")
Next i
Für die TextBoxen 4,5 und 6 funktioniert der eingefügte Code und der Eintrag wird als Datum gespeichert.
Es kommt jedoch ab TextBox 13 zu einem Laufzeitfehler '13' Typen unverträglich
Ich kann zwischen den TextBoxen 4,5,6 und 13, 22,23 keinen Unterschied feststellen.
Es würde mich sehr freuen, wenn mir jemand mit einem Tipp weiterhelfen könnte.

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datum aus TextBox auch als Datum speichern
25.06.2018 13:22:25
Wilfried
Hallo Bernd,
ich habe zwischenzeitlich einiges probiert, ohne jedoch den finalen Erfolg.
Ich vermute, dass der Inhalt der TextBoxen zunächst als Datum formatiert werden muss.
Mir gelingt es allerdings nicht dies in die bestehende Schleife zu integrieren.
Kannst Du helfen?
'###################################################################
'Ich vermute, dass hier eine Abfrage sein müsste:
' Bist due TextBox 4,5,6,13,22,23,25,26 usw. Dann Ist das Format ein Datum:
'wie müsste der Code aussehen?
For i = 1 To iCONST_ANZAHL_EingabeFELDER
Tabelle4.Cells(lZeile, i) = Me.Controls("TextBox" & i)
'Werte als Datum in Tabelle4 (Anfragen) speichern
Tabelle4.Cells(lZeile, 4).Value = CDate(TextBox4)
Tabelle4.Cells(lZeile, 5).Value = CDate(TextBox5)
Tabelle4.Cells(lZeile, 6).Value = CDate(TextBox6)
If Tabelle4.Cells(lZeile, i) = TextBox13 Then
TextBox13 = Format(Date, "DD.MM.YY")
Tabelle4.Cells(lZeile, 13).Value = CDate(TextBox13)
End If
If Tabelle4.Cells(lZeile, i) = TextBox22 Then
TextBox22 = Format(Date, "DD.MM.YY")
Tabelle4.Cells(lZeile, 22).Value = CDate(TextBox13)
End If
If Tabelle4.Cells(lZeile, i) = TextBox23 Then
TextBox23 = Format(Date, "DD.MM.YY")
Tabelle4.Cells(lZeile, 23).Value = CDate(TextBox13)
End If
'Tabelle4.Cells(lZeile, 25).Value = CDate(TextBox25)
'Tabelle4.Cells(lZeile, 26).Value = CDate(TextBox26)
'Tabelle4.Cells(lZeile, 30).Value = CDate(TextBox30)
'Tabelle4.Cells(lZeile, 31).Value = CDate(TextBox31)
'Tabelle4.Cells(lZeile, 35).Value = CDate(TextBox35)
Kannst Du helfen?
Anzeige
AW: Datum aus TextBox auch als Datum speichern
25.06.2018 13:22:27
Wilfried
Hallo Bernd,
ich habe zwischenzeitlich einiges probiert, ohne jedoch den finalen Erfolg.
Ich vermute, dass der Inhalt der TextBoxen zunächst als Datum formatiert werden muss.
Mir gelingt es allerdings nicht dies in die bestehende Schleife zu integrieren.
Kannst Du helfen?
'###################################################################
'Ich vermute, dass hier eine Abfrage sein müsste:
' Bist due TextBox 4,5,6,13,22,23,25,26 usw. Dann Ist das Format ein Datum:
'wie müsste der Code aussehen?
For i = 1 To iCONST_ANZAHL_EingabeFELDER
Tabelle4.Cells(lZeile, i) = Me.Controls("TextBox" & i)
'Werte als Datum in Tabelle4 (Anfragen) speichern
Tabelle4.Cells(lZeile, 4).Value = CDate(TextBox4)
Tabelle4.Cells(lZeile, 5).Value = CDate(TextBox5)
Tabelle4.Cells(lZeile, 6).Value = CDate(TextBox6)
If Tabelle4.Cells(lZeile, i) = TextBox13 Then
TextBox13 = Format(Date, "DD.MM.YY")
Tabelle4.Cells(lZeile, 13).Value = CDate(TextBox13)
End If
If Tabelle4.Cells(lZeile, i) = TextBox22 Then
TextBox22 = Format(Date, "DD.MM.YY")
Tabelle4.Cells(lZeile, 22).Value = CDate(TextBox13)
End If
If Tabelle4.Cells(lZeile, i) = TextBox23 Then
TextBox23 = Format(Date, "DD.MM.YY")
Tabelle4.Cells(lZeile, 23).Value = CDate(TextBox13)
End If
'Tabelle4.Cells(lZeile, 25).Value = CDate(TextBox25)
'Tabelle4.Cells(lZeile, 26).Value = CDate(TextBox26)
'Tabelle4.Cells(lZeile, 30).Value = CDate(TextBox30)
'Tabelle4.Cells(lZeile, 31).Value = CDate(TextBox31)
'Tabelle4.Cells(lZeile, 35).Value = CDate(TextBox35)
Kannst Du helfen?
Anzeige
AW: Datum aus TextBox auch als Datum speichern
25.06.2018 16:17:38
Bernd
Hi,
schon mal den Link angeschaut?
Dort findest du folgenden Code...
Private Sub TextBox2_AfterUpdate()
TextBox2 = Format(TextBox2, "DD.MM.YYYY").Text
End Sub
PS. Textboxen anpassen
AW: Datum aus TextBox auch als Datum speichern
27.06.2018 10:42:15
Wilfried
Hallo Bernd,
Vielen Dank für deine tolle Unterstützung.
Es hat bei mir etwas gedauert aber jetzt funktioniert es.
Viele Grüße
Wilfried
AW: Datum aus TextBox auch als Datum speichern
25.06.2018 13:32:54
Wilfried
Das Problem besteht weiterhin, hatte ich vergessen anzukreuzen.

325 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige