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

Forumthread: Datum als Datum aus UserForm in Zelle schreiben

Datum als Datum aus UserForm in Zelle schreiben
Jonathan
Hey,
in einem Textfeld einer Userform wird ein Datum im vordef. Format
Format(Date, "dddd, dd.mm.yyyy")
eingetregen. Dieses möchte ich in eine Zelle meines Arbeitsblattes schreiben - es soll dort auch als Datum erkannt werden.
Nutze ich (verkürzt)
Range("A1").value = txt_datum.value
wird das Datum in der Zelle als solches nicht erkannt.
Wie kann ich es richtig eintragen?
Danke euch!
LG
Anzeige
AW: Datum als Datum aus UserForm in Zelle schreiben
14.09.2011 20:29:14
Josef

Hallo Jonathan,

= CDate(txt_datum)


« Gruß Sepp »

Anzeige
Danke!
14.09.2011 20:30:50
Jonathan
Die Umwandlungsfunktionen kann ich ja entsprechend des Datentyps verwenden!
Danke Dir!!
AW: Datum als Datum aus UserForm in Zelle schreiben
14.09.2011 20:35:30
Jonathan
Hey,
habe es getestet, dies funktioniert aber nur, wenn das Datum im "normalen" Format in dem Textfeld vorliegt. Da ich es aber im Format dddd, dd.mm.yyyy eingebe, also z.B. Mittwoch 14.09.2011, wird es nicht als Datum erkannt... ;-(
Anzeige
AW: Datum als Datum aus UserForm in Zelle schreiben
14.09.2011 20:45:18
Josef

Hallo Johnatan,
das ist doch wohl logisch, das man diesen Text (eine TextBox enthält nun mal Text), nicht so einfach in ein Datum umwandeln kann.
Wenn das Format immer gleich ist, dann geht das z. B. so.

= CDate(Right(txt_datum, 10))


« Gruß Sepp »

Anzeige
AW: Datum als Datum aus UserForm in Zelle schreiben
14.09.2011 20:55:04
Jonathan
Klar, danke! Ich denk manchmal einfach zu kompliziert! ;-)
LG
Ergänzung: das Gleiche gilt für Zahlen...
14.09.2011 20:29:34
Jonathan
auch diese werden als Text eingetragen...

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Datum aus UserForm in Zelle schreiben


Schritt-für-Schritt-Anleitung

Um ein Datum aus einer UserForm in eine Zelle zu schreiben und sicherzustellen, dass es als Datum erkannt wird, folge diesen Schritten:

  1. Erstelle die UserForm: Füge ein Textfeld (txt_datum) in deine UserForm ein, in das das Datum eingegeben wird.
  2. Formatiere das Datum: Stelle sicher, dass das Datum im gewünschten Format eingegeben wird, z.B. dddd, dd.mm.yyyy (z.B. Mittwoch, 14.09.2011).
  3. Verwende VBA zur Umwandlung: Setze den folgenden Code in das Ereignis ein, das ausgelöst wird, wenn du das Datum in die Zelle schreiben möchtest:

    Range("A1").Value = CDate(Right(txt_datum.Value, 10))

    Hierbei wird die Funktion CDate verwendet, um sicherzustellen, dass das Datum korrekt als Datum in Excel erkannt wird.


Häufige Fehler und Lösungen

  • Datum wird als Text erkannt: Wenn das Datum nicht im richtigen Format eingegeben wird, erkennt Excel es nicht als Datum. Stelle sicher, dass nur das Datum im Textfeld steht.
  • Falsches Format: Wenn du das Datum im Format dddd, dd.mm.yyyy eingibst, stelle sicher, dass du nur die letzten 10 Zeichen für die Umwandlung verwendest, wie im obigen Code gezeigt.

Alternative Methoden

Wenn du das heutige Datum in eine Zelle schreiben möchtest, kannst du das folgende Makro verwenden:

Range("A1").Value = Date

Für einen Zeitstempel kannst du die Funktion Now verwenden:

Range("A1").Value = Now

Diese Methoden sind nützlich, wenn du das aktuelle Datum oder einen Zeitstempel in Excel einfügen möchtest.


Praktische Beispiele

  1. Geburtsdatum schreiben: Wenn du ein Geburtsdatum aus einer UserForm in eine Zelle schreiben möchtest, benutze das gleiche Prinzip:

    Range("B1").Value = CDate(txt_geburtsdatum.Value)
  2. Datum rückwärts schreiben: Wenn du das Datum in umgekehrter Reihenfolge eingeben möchtest, kannst du die Format-Funktion verwenden:

    Dim datumRückwärts As String
    datumRückwärts = Format(txt_datum.Value, "dd.mm.yyyy")
    Range("C1").Value = CDate(datumRückwärts)

Tipps für Profis

  • Benutze benutzerdefinierte Formate: Wenn du sicherstellen möchtest, dass die Zelle das Datum immer richtig anzeigt, kannst du das Zellenformat anpassen.
  • Fehlerbehandlung einbauen: Es ist sinnvoll, Fehlerbehandlungen in dein VBA-Skript einzubauen, um sicherzustellen, dass das Datum korrekt verarbeitet wird.
On Error GoTo Fehler
Range("A1").Value = CDate(Right(txt_datum.Value, 10))
Exit Sub
Fehler:
MsgBox "Ungültiges Datum eingegeben!"

FAQ: Häufige Fragen

1. Wie kann ich das heutige Datum automatisch einfügen?
Verwende Range("A1").Value = Date, um das aktuelle Datum in die Zelle zu schreiben.

2. Was mache ich, wenn ich das Datum in einem anderen Format brauche?
Du kannst die Format-Funktion verwenden, um das Datum in das gewünschte Format zu bringen, bevor du es in die Zelle schreibst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige