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

Forumthread: Funktion DATWERT() in VBA

Funktion DATWERT() in VBA
Marcel
Hallo zusammen
Kann mir jemand die Funktion DATWERT() in VBA übersetzen. Wenn ich sie mit dem Recorder aufzeichne bekomme ich nur "FormulaR1C1 = "=DATEVALUE". Gibt es noch einen anderen Formel?
Vielen Dank
Gruss Marcel
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
vermutlich CDate
21.08.2009 15:53:13
David
AW: Funktion DATWERT() in VBA
21.08.2009 16:05:21
Marcel
Alles klar
Vielen Dank und schönes Woe
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

DATWERT() Funktion in VBA effektiv nutzen


Schritt-für-Schritt-Anleitung

  1. Öffne den VBA-Editor: Drücke ALT + F11 in Excel, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf "VBAProject (dein Arbeitsblattname)" und wähle "Einfügen" > "Modul".

  3. Schreibe den Code: Um die Funktion DATWERT() zu nutzen, kannst du den folgenden Code verwenden:

    Function Datwert(datum As String) As Date
       Datwert = CDate(datum)
    End Function
  4. Speichere deinen Code: Klicke auf "Datei" und dann auf "Speichern", bevor du den Editor schließt.

  5. Verwende die Funktion in Excel: Du kannst die Funktion nun in deinen Excel-Zellen verwenden, z.B. =Datwert("01.01.2023").


Häufige Fehler und Lösungen

  • Fehler: "#WERT!" in der Zelle
    Lösung: Stelle sicher, dass das Datum im richtigen Format vorliegt. Die Funktion CDate() erwartet ein Datum in einem anerkannten Format.

  • Problem mit Regionalen Einstellungen
    Lösung: Achte darauf, dass die Datumseinstellungen deines Systems mit dem Format übereinstimmen, das du in der Funktion verwendest.


Alternative Methoden

Falls du eine andere Methode zur Umwandlung von Datumswerten in VBA bevorzugst, kannst du auch die DateSerial-Funktion verwenden. Hier ein Beispiel:

Function DatwertAlternative(tag As Integer, monat As Integer, jahr As Integer) As Date
    DatwertAlternative = DateSerial(jahr, monat, tag)
End Function

Diese Methode erlaubt dir, das Datum direkt durch die Angabe von Tag, Monat und Jahr zu erstellen.


Praktische Beispiele

  1. Einfaches Datum umwandeln:

    Sub Beispiel()
       Dim meinDatum As Date
       meinDatum = Datwert("15.08.2023")
       MsgBox "Das umgewandelte Datum ist: " & meinDatum
    End Sub
  2. Verwendung in einer Schleife:

    Sub DatumsSchleife()
       Dim i As Integer
       For i = 1 To 5
           Cells(i, 1).Value = Datwert("01.0" & i & ".2023")
       Next i
    End Sub

Tipps für Profis

  • Fehlerbehandlung hinzufügen: Implementiere eine Fehlerbehandlung in deiner Funktion, um unerwartete Eingaben abzufangen.

    Function DatwertMitFehlerbehandlung(datum As String) As Variant
      On Error GoTo Fehler
      DatwertMitFehlerbehandlung = CDate(datum)
      Exit Function
    Fehler:
      DatwertMitFehlerbehandlung = "Ungültiges Datum"
    End Function
  • Verwendung von benutzerdefinierten Formaten: Du kannst das Format des zurückgegebenen Datums anpassen, indem du die Format-Funktion in VBA nutzt.


FAQ: Häufige Fragen

1. Frage
Warum funktioniert die DATWERT()-Funktion manchmal nicht?
Antwort: Die Funktion erwartet ein Datum im richtigen Format. Achte darauf, dass dein Eingabewert korrekt formatiert ist.

2. Frage
Kann ich die DATWERT()-Funktion auch für Zeitangaben verwenden?
Antwort: Die DATWERT()-Funktion in VBA ist nur für Datumsangaben gedacht. Für Zeitangaben solltest du die Funktion TimeValue() verwenden.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige