Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Datum aus Textbox in Zelle schreiben

Forumthread: Datum aus Textbox in Zelle schreiben

Datum aus Textbox in Zelle schreiben
06.08.2003 09:21:47
Andi_H
Hallo zusammen,
ich habe ein Problem mit zwei Textboxen in meiner Userform. Über die TB`s möchte ich Datumswerte eingeben und diese dann für weitere Berechnungen in ein Tabellenblatt schreiben. Nur leider erkennt Excel meinen Datumswert aus der TB als string und nicht als datum.
Kann mir jemand verraten wie ich den Wert aus der Textbox als Datum in meine Tabelle bekomme oder welchen anderen Weg man hierfür gehen könnte?
Vielen Dank vorab.
Gruß
Andi
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datum aus Textbox in Zelle schreiben
06.08.2003 09:48:50
andreas e
hallo andi
Sheets("Tabelle2").Range("A1").Value = Format(TextBox1.Value, "dd.mm.yyyy")
gruß
andreas e
http://www.skripteundaufgaben.de
viele kostzenlose downloads zu excel und mehr

AW: Datum aus Textbox in Zelle schreiben
06.08.2003 10:08:54
Andi_H
Hallo andreas,
wenn ich den Code meines Commandbuttons, welcher die TB-Werte übernimmt, nach deinem Vorschlag ändere, bekomme ich einen Fehler.(Fehler beim kompilieren. Projekt oder Bibliothek nicht auffindbar)

Private Sub CommandButton9_Click()
Dim main As Worksheet
Set main = Sheets("main")
If tb_wpk.Text = "" Then GoTo err
If tb_beg.Text = "" Then GoTo err
If tb_end.Text = "" Then GoTo err
main.Cells(2, 2) = tb_wpk.Text
main.Cells(3, 2) = Format(tb_beg.Value, "dd.mm.yyyy")
main.Cells(4, 2) = Format(tb_end.Value, "dd.mm.yyyy")
MsgBox ("Einstellungen wurden übernommen")
Exit Sub
err:
MsgBox ("Alle Felder ausfüllen")
End Sub


Anzeige
AW: Datum aus Textbox in Zelle schreiben
06.08.2003 10:23:02
andreas e
verstehe ich nicht,
wo setzt die fehlermeldung denn auf ??
gruß
andreas e

AW: Datum aus Textbox in Zelle schreiben
06.08.2003 10:29:43
Andi_H
beim ersten Format. wobei ich das nicht ganz verstehe, weil ich diese Möglichkeit gestern bereits versucht habe (leider erfolglos)
ob des an der hitze liegt. wenn ich mit dem Button die Datumswerte aus tb_beg und tb_end übernehme, wird dieser im Tabellenblatt gleich als string linksbündig angezeigt.

Anzeige
AW: Datum aus Textbox in Zelle schreiben
06.08.2003 10:32:17
andreas e
ist zwar idiotisch, aber versuchs mal mit
main.Cells(3, 2).value = Format(tb_beg.Value, "dd.mm.yyyy") oder
sheets("Main").Cells(3, 2) = Format(tb_beg.Value, "dd.mm.yyyy")
gruß
andreas e

AW: Datum aus Textbox in Zelle schreiben
06.08.2003 10:41:45
Andi_H
vielen Dank für deine Hilfe andreas, es funtioniert aber leider immer noch nicht. Jetzt bekomme ich bei Format den Fehler "Laufzeitfehler 13 Typen unverträglich"
Muß wohl am Excel liegen, aber normal kann das ja nicht sein, der Formatbefehl ging bisher fehlerfrei.
Ich versuch jetzt mal die Datumseingabe in die Textbox ohne die Punkte und laß mir hieraus dann ein Datum generieren.
Danke und Grüße
Andi

Anzeige
AW: Datum aus Textbox in Zelle schreiben
06.08.2003 10:53:32
andreas e
hast denn die varaiblen irgendwie deklariert ???
ansonsten hab ich leider auch keine idee ? sorry
andreas e

AW: Datum aus Textbox in Zelle schreiben
06.08.2003 11:24:36
Andi_H
ja die variablen waren alle deklariert. Ich hab das jetzt so gelöst dass das datum in die tb ohne Punkte als String eingegeben wird und daraus generiere ich mir ein Datum, das funzt auch so einigermaßen. Hab auch schon einen Verdacht warum mein Excel vorher solche Zicken gemacht hat, es fehlten die Verweise zur Börsensoftware (eigentlich fehlte die Software, nicht die verweise, aber diese waren nicht mehr vorhanden, da ich heute an einem anderen Recner arbeite)
Dennoch vielen Dank und Grüße aus Regensburg
Andi

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Datum aus Textbox in Zelle schreiben


Schritt-für-Schritt-Anleitung

Um ein Datum aus einer Textbox in eine Excel-Zelle zu schreiben, kannst Du die folgende Schritt-für-Schritt-Anleitung befolgen:

  1. Öffne den Visual Basic for Applications (VBA) Editor in Excel. Dies kannst Du tun, indem Du ALT + F11 drückst.

  2. Füge eine Userform hinzu: Klicke mit der rechten Maustaste auf dein Projekt und wähle "UserForm einfügen".

  3. Füge zwei Textboxen und einen CommandButton zur Userform hinzu. Nenne die Textboxen zum Beispiel tb_beg und tb_end.

  4. Füge den folgenden Code in den CommandButton ein:

    Private Sub CommandButton1_Click()
       Dim main As Worksheet
       Set main = Sheets("Tabelle2")
    
       If tb_beg.Text = "" Or tb_end.Text = "" Then
           MsgBox "Bitte beide Felder ausfüllen"
           Exit Sub
       End If
    
       main.Cells(1, 1).Value = Format(tb_beg.Value, "dd.mm.yyyy")
       main.Cells(2, 1).Value = Format(tb_end.Value, "dd.mm.yyyy")
       MsgBox "Datum erfolgreich geschrieben"
    End Sub
  5. Teste die Userform, indem Du die Werte in die Textboxen eingibst und den Button klickst. Die Datumswerte sollten korrekt in die Zellen geschrieben werden.


Häufige Fehler und Lösungen

  • Fehler: "Laufzeitfehler 13 - Typen unverträglich"

    • Lösung: Stelle sicher, dass die Eingaben in den Textboxen tatsächlich Datumswerte sind. Du kannst die Eingaben auch vor dem Formatieren überprüfen.
  • Fehler: Datumswerte werden als String angezeigt

    • Lösung: Achte darauf, dass Du die Formatierung wie im obigen Beispiel verwendest. Wenn Du das Datum mit Punkten eingibst, verwende Format(tb_beg.Value, "dd.mm.yyyy").
  • Fehler beim Kompilieren

    • Lösung: Überprüfe die Verweise in Deinem VBA-Projekt. Manchmal fehlen Bibliotheken, die für die Funktionalität benötigt werden.

Alternative Methoden

Einige alternative Methoden, um ein Datum aus einer Textbox in eine Zelle zu schreiben, sind:

  • Direktes Schreiben ohne Formatierung: Wenn Du sicherstellen kannst, dass die Eingaben immer im richtigen Datumsformat sind, kannst Du die Formatierung weglassen:

    main.Cells(1, 1).Value = tb_beg.Value
  • Datum mit "/" schreiben: Du kannst den Text in der Textbox so formatieren, dass er mit Schrägstrichen eingegeben wird, und ihn dann direkt in die Zelle schreiben:

    main.Cells(1, 1).Value = Replace(tb_beg.Value, ".", "/")

Praktische Beispiele

Hier sind einige praktische Beispiele, wie Du den Code zum Schreiben von Datumswerten anpassen kannst:

  1. Eingabe eines Datums ohne Punkte:

    main.Cells(1, 1).Value = DateSerial(Year(tb_beg.Value), Month(tb_beg.Value), Day(tb_beg.Value))
  2. Schreiben von Datumswerten in verschiedene Zellen:

    main.Cells(1, 1).Value = tb_beg.Value
    main.Cells(1, 2).Value = tb_end.Value

Tipps für Profis

  • Verwende Datumseingabemasken in Deinen Textboxen, um sicherzustellen, dass die Benutzer die Daten im richtigen Format eingeben.
  • Nutze Fehlerbehandlungsroutinen, um potenzielle Laufzeitfehler abzufangen und die Benutzerfreundlichkeit zu verbessern.
  • Experimentiere mit Datumsformaten, um sicherzustellen, dass die Daten in der gewünschten Form erscheinen.

FAQ: Häufige Fragen

1. Wie kann ich sicherstellen, dass die Benutzer ein gültiges Datum eingeben? Du kannst die Eingaben in der Textbox vor dem Schreiben in die Zelle überprüfen. Verwende IsDate(tb_beg.Text) um zu prüfen, ob die Eingabe ein Datum ist.

2. Gibt es eine Möglichkeit, die Datumswerte in ein anderes Format zu schreiben? Ja, Du kannst das gewünschte Datumsformat in der Format-Funktion anpassen, z.B. Format(tb_beg.Value, "mm/dd/yyyy").

3. Was kann ich tun, wenn Excel meine Datumswerte nicht richtig erkennt? Überprüfe die regionalen Einstellungen von Excel und stelle sicher, dass sie mit dem Format übereinstimmen, in dem Du die Daten eingibst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige