Zahlenformatierung
06.11.2014 13:35:27
Langmantl
Mit folgendem Befehl lasse ich die Textbox in die Tabelle eintragen
'Speichern Schaltfläche Ereignisroutine
Private Sub CommandButton3_Click()
Dim lZeile As Long
'Wenn kein Datensatz in der ListBox markiert wurde, wird die Routine beendet
If ListBox1.ListIndex = -1 Then Exit Sub
'Wir müssen prüfen, ob die ID Spalte auch gefüllt ist!!
If Trim(CStr(TextBox1.Text)) = "" Then
'Meldung ausgeben
MsgBox "Sie müssen mindestens ein Datum eingeben!", vbCritical + vbOKOnly, "FEHLER!"
'Abbrechen der Speicherroutine
Exit Sub
End If
'Ausbauoption: Prüfen, ob die ID in Tabelle1 Spalte 1 schon vorhanden ist!
'Zum Speichern benötigen wir die Zeilennummer des ausgewählten Datensatzes
lZeile = 10 'Start in Zeile 2, Zeile 1 sind ja die Überschriften
'Schleife solange etwas in der ersten Spalte in Tabelle 1 drin steht
Do While Trim(CStr(Sheets(2).Cells(lZeile, 1).Value)) ""
'Datensatz ID Spalte mit selektiertem Eintrag der ListBox vergleichen
If ListBox1.Text = Trim(CStr(Sheets(2).Cells(lZeile, 1).Value)) Then
'Eintrag gefunden, TextBoxen in die Zellen schreiben
Sheets(2).Cells(lZeile, 1).Value = Trim(CStr(TextBox1.Text))
Sheets(2).Cells(lZeile, 2).Value = TextBox2.Text
Sheets(2).Cells(lZeile, 3).Value = TextBox3.Text
'Die ListBox muss nun neu geladen werden
'allerdings nur, wenn sich der Name (ID) geändert hat
If ListBox1.Text Trim(CStr(TextBox1.Text)) Then
Call UserForm_Initialize
If ListBox1.ListCount > 0 Then ListBox1.ListIndex = 0
End If
Exit Do 'Vorzeitiges Ende, da der Datensatz schon gefunden ist
End If
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
End Sub
dies ist der Gesamtcode, wobei die Eintragung: Sheets(2).Cells(lZeile, 1).Value = Trim(CStr(TextBox1.Text))die gewünschte ist, Wie muss ich diese Zeile ändern, wenn ich möchte, dass er es in der entsprechenden Zelle in folgendem Format einträgt: =DATUM(2014;11;11) dies ist wichtig, weil er in einer anderen Funktion nur auf diese Zellformatierung reagieren kann.