VBA Date Function (12 Verwendungen von Makros mit Beispielen)

  • Teile Das
Hugh West

In der Microsoft Visual Basic-Anwendung sind Datumsfunktionen oder datumsbezogene Konzepte unerlässlich, um verschiedene Operationen in Ihrem Datensatz durchzuführen. Sie können sich in verschiedenen Situationen wiederfinden, in denen Sie diese Funktionen verwenden müssen. In diesem Tutorial werden Sie die Datumsfunktion von VBA mit geeigneten Beispielen und geeigneten Illustrationen kennenlernen. Außerdem werden wir Ihnen mehrere Datumsfunktionen vorstellendie Sie in Ihr Arbeitsblatt einbauen können.

Download Arbeitsbuch Praxis

Verwendungen von VBA Date.xlsm

Einführung in die VBA-Datumsfunktion

Excel kategorisiert Daten in der Datum/Uhrzeit Sie ist eine eingebaute Funktion, die in VBA-Makros verwendet werden kann, um beliebige datumsbezogene Operationen durchzuführen.

Bevor Sie mit der Datumsfunktion beginnen, müssen Sie sich mit der Datumsvariablen in VBA .

⏺ Syntax

Datum()

⏺ Argumente Erklärungen

Es gibt keine Argumente.

⏺ Rückgaben

Gibt das aktuelle Datum zurück.

⏺ Verfügbar in

Excel für Office 365, Excel 2019, Excel 2016, Excel 2013, Excel 2011 für Mac, Excel 2010, Excel 2007, Excel 2003, Excel XP, Excel 2000

⏺ Beispiel

Wie Sie wissen, gibt es keine Argumente, Sie können sie nur wie folgt eingeben:

 Sub vba_date() Dim current_date As Date current_date = Date MsgBox current_date End Sub 

Wenn wir mit der Funktion Datum arbeiten, geben wir in den VBA-Codes keine Klammern an, wie in diesem Beispiel.

Ausgabe :

12 Datumsfunktionen in VBA, die Sie lernen sollten

In den folgenden Abschnitten werden wir Ihnen einige weitere Datumsfunktionen vorstellen, die Sie für zahlreiche Zwecke in VBA verwenden können. Lesen Sie diese Abschnitte, um alle Möglichkeiten der Arbeit mit dem Datum in VBA kennenzulernen. Wir empfehlen Ihnen, sie in Ihrem Arsenal zu behalten. Es wird Ihr Wissen sicherlich verbessern.

1. die Funktion DateAdd als Datum in VBA

In VBA verwenden wir die Funktion DateAdd, um die Tage eines bestimmten Datums zu addieren und das resultierende Datum zurückzugeben.

Syntax:

DateAdd(Intervall, Zahl, Datum)

Argumente:

Pause: Der String-Ausdruck ist das Zeitintervall, das Sie hinzufügen möchten.

Nummer: Erforderlich. Es handelt sich um einen numerischen Ausdruck, der die Anzahl der Intervalle angibt, die Sie hinzufügen möchten. Er kann positiv (um Daten in der Zukunft zu erhalten) oder negativ (um Daten in der Vergangenheit zu erhalten) sein.

Datum: Das ursprüngliche Datum/die ursprüngliche Uhrzeit.

Nun, die Intervall Argumente können die folgenden Einstellungen haben:

jjjj - Jahr

q - Quartal

m - Monat

y - Tag des Jahres

d - Tag

w - Wochentag

ww - Woche

h - Stunde

n - Minute

s - Zweite

Code-Schnipsel :

 Sub dateadd_function() Dim result_Date As Date result_Date = DateAdd("d", 15, "1/31/2022") MsgBox result_Date End Sub 

Ausgabe:

Wie Sie sehen können, wurden in VBA 15 Daten zum aktuellen Datum hinzugefügt.

Lesen Sie mehr: Verwendung der Funktion IsDate in VBA (3 Beispiele)

2. die DateDiff-Funktion in VBA

Die Funktion DateDiff gibt eine Variante (Long) zurück, die die Anzahl der Zeitabstände zwischen zwei angegebenen Daten bestimmt.

Syntax :

DateDiff(intervall, date1, date2, [ ersterWochentag, [ ersteWocheimJahr ]] )

Argumente:

Pause: String-Ausdruck ist das Zeitintervall, das Sie hinzufügen möchtenString-Ausdruck ist die Zeitspanne, die Sie verwenden, um den Unterschied zwischen zwei Daten zu berechnen.

Datum1,Datum2 : Erforderlich; Variante (Datum): Zwei Daten, die Sie in der Berechnung verwenden möchten.

erster Tag der Woche: Optional: Eine Konstante, die den ersten Tag der Woche angibt. Wenn nicht festgelegt, wird Sonntag angenommen.

erste Woche des Jahres: Optional: Eine Konstante, die die erste Woche des Jahres festlegt. Wenn sie nicht festgelegt ist, wird die erste Woche als die Woche angenommen, in der der 1. Januar erscheint.

Nun, die Intervall Argumente können die folgenden Einstellungen haben:

jjjj - Jahr

q - Quartal

m - Monat

y - Tag des Jahres

d - Tag

w - Wochentag

ww - Woche

h - Stunde

n - Minute

s - Zweite

Die erster Tag der Woche hat diese Einstellungen:

vbSonntag - den Sonntag als den wichtigsten Tag der Woche zu nutzen.

vbMontag - setzt den Montag als ersten Tag der Woche ein.

vbDienstag - den Dienstag als ersten Tag der Woche.

vbMittwoch - setzt den Mittwoch als ersten Tag der Woche ein.

vbDonnerstag - den Donnerstag als den eigentlichen Tag der Woche.

vbFriday - setzt den Freitag als ersten Tag der Woche ein.

vbSamstag - ist der Samstag der erste Tag der Woche.

vbUseSystemDayOfTheWeek - verwendet den ersten Tag der Woche, der in den Einstellungen Ihres Geräts festgelegt ist.

Die erste Woche des Jahres hat diese Einstellungen:

vbFirstJan1 - nutzt die Woche mit dem 1. Januar.

vbFirstFourDays - beschäftigt die erste Woche im neuen Jahr, die mindestens vier Tage hat.

vbFirstFullWeek - läuft die erste volle Woche des Jahres.

vbSystem - verwendet die erste Woche des Jahres, die durch die Standorte Ihrer Geräte definiert ist.

Code-Schnipsel:

 Sub DateDiff_Function() Dim result As Long result = DateDiff("d", "1/31/2022", "2/12/2022") MsgBox result End Sub 

Ausgabe :

Am Ende wird die Differenz zwischen den beiden Daten in VBA zurückgegeben.

Lesen Sie mehr: Verwendung der VBA-DateDiff-Funktion in Excel (9 Beispiele)

3. datePart Funktion als Datum

Die Funktion DatePart gibt eine Variante (Integer) zurück, die den definierten Teil eines angegebenen Datums enthält.

Syntax :

DatePart(interval, date, [ firstdayofweek, [ firstweekofyear ]])

Argumente:

Pause: String-Ausdruck ist das Zeitintervall, das Sie hinzufügen möchtenString-Ausdruck ist die Zeitspanne, die Sie verwenden, um den Unterschied zwischen zwei Daten zu berechnen.

Datum: Erforderlich; Variante (Datum): Das Datum, das Sie für die Berechnung verwenden möchten.

erster Tag der Woche: Optional: Eine Konstante, die den ersten Tag der Woche angibt. Wenn nicht festgelegt, wird Sonntag angenommen.

erste Woche des Jahres: Optional: Eine Konstante, die die erste Woche des Jahres festlegt. Wenn sie nicht festgelegt ist, wird die erste Woche als die Woche angenommen, in der der 1. Januar erscheint.

Nun, die Intervall Argumente können die folgenden Einstellungen haben:

jjjj - Jahr

q - Quartal

m - Monat

y - Tag des Jahres

d - Tag

w - Wochentag

ww - Woche

h - Stunde

n - Minute

s - Zweite

Die erster Tag der Woche hat diese Einstellungen:

vbSonntag - den Sonntag als den wichtigsten Tag der Woche zu nutzen.

vbMontag - setzt den Montag als ersten Tag der Woche ein.

vbDienstag - den Dienstag als ersten Tag der Woche.

vbMittwoch - setzt den Mittwoch als ersten Tag der Woche ein.

vbDonnerstag - den Donnerstag als den eigentlichen Tag der Woche.

vbFriday - setzt den Freitag als ersten Tag der Woche ein.

vbSamstag - ist der Samstag der erste Tag der Woche.

vbUseSystemDayOfTheWeek - verwendet den ersten Tag der Woche, der in den Einstellungen Ihres Geräts festgelegt ist.

Die erste Woche des Jahres hat diese Werte:

vbFirstJan1 - betreibt die Woche einschließlich 1. Januar.

vbFirstFourDays - nutzt die erste Woche, die höchstens vier unterdimensionierte Tage im neuen Jahr besitzt.

vbFirstFullWeek - nutzt die erste volle Woche des Jahres.

vbSystem - verwendet die erste Woche des Jahres, die von den Standorten Ihres Geräts ausgewählt wurde.

Code-Schnipsel :

 Sub DatePart_Function() Dim result As Integer result = DatePart("m", "10/11/2022") MsgBox result End Sub 

Ausgabe :

Auf diese Weise können Sie diese Datumsfunktion in VBA-Codes verwenden.

Lesen Sie mehr: Verwendung der VBA-Funktion FileDateTime in Excel (3 Verwendungen)

4. dateSerial-Funktion

Sie können ein Datum basierend auf der Eingabe von Jahr, Monat und Tag anzeigen, indem Sie die DateSerial Funktion.

Syntax:

DateSerial(Jahr, Monat, Tag)

Argumente:

Jahr - Erforderliches Feld: Eine Zahl zwischen 100 und 9999 (einschließlich) oder ein numerischer Ausdruck, der das Jahr symbolisiert.

Monat - Erforderliches Feld: Ein ganzzahliger Wert, der den Monat definiert.

Tag - Erforderliches Feld: Ein ganzzahliger Wert, der den Tag beschreibt.

Code-Schnipsel:

 Sub date_serial() Dim date_special As Date date_special = DateSerial(2022, 1, 11) MsgBox date_special End Sub 

Ausgabe :

Lesen Sie mehr: Wie man VBA TimeSerial in Excel verwendet (3 Beispiele)

4. die VBA-Funktion DateValue

Nun verwenden wir die Funktion DateValue, um ein Datum zu definieren.

Syntax :

DateValue(Datum)

Argument:

Hier ist die Datum Argument ist in der Regel ein String-Ausdruck, der ein Datum zwischen dem 1. Januar 100 und dem 31. Dezember 9999 beschreibt. Unabhängig davon kann das Datum auch ein beliebiger Ausdruck sein, der ein Datum, eine Zeit oder sowohl ein Datum als auch eine Zeit in diesem Bereich symbolisieren kann.

Code-Schnipsel:

 Sub Datumswert() Dim Result As Date result = Datumswert("Januar, 10, 2022") MsgBox result End Sub 

Ausgabe :

Wie Sie sehen können, haben wir die Datumsfunktion erfolgreich in VBA-Codes verwendet.

5. die Funktion Tag in VBA

Sie gibt eine Variante (Integer) zurück, die eine reelle Zahl zwischen 1 und 31 einschließlich bestimmt, die den Tag des Monats angibt.

Syntax :

Tag(Datum)

Argument:

Das erforderliche Datumsargument ist eine beliebige Variante, ein numerischer Ausdruck, ein String-Ausdruck oder eine beliebige Kombination und stellt ein Datum dar. Wenn das Datum Null enthält, wird auch Null zurückgegeben.

Code-Schnipsel:

 Sub day_function() Dim date1, the_day date1 = #12/12/2023# the_day = Day(date1) MsgBox the_day End Sub 

Ausgabe:

Wie Sie sehen können, haben wir mit Hilfe der VBA-Codes herausgefunden, dass der Tag des angegebenen Datums 12 ist.

Verwandte Inhalte: VBA Format-Funktion in Excel (8 Verwendungen mit Beispielen)

6. die VBA-Monatsfunktion als Datum

Sie gibt eine Variante (Integer) zurück, die eine reelle Zahl zwischen 1 und 12 einschließlich definiert, die den Monat des Jahres angibt.

Syntax :

Monat(Datum)

Argument:

Das erforderliche Datumsargument ist eine beliebige Variante, ein numerischer Ausdruck, ein String-Ausdruck oder eine beliebige Kombination und stellt ein Datum dar. Wenn das Datum Null enthält, wird auch Null zurückgegeben.

Code-Schnipsel:

 Sub month_function() Dim date1, the_month date1 = #12/12/2023# the_month = Month(date1) MsgBox the_month End Sub 

Ausgabe:

Verwandte Inhalte: Verwendung der VBA-Rechtsfunktion in Excel (6 Beispiele)

Ähnliche Lektüre

  • Verwendung der VBA-Funktion Environ (4 Beispiele)
  • Verwendung von VBA und Funktionen in Excel (4 Beispiele)
  • VBA If - Then - Else-Anweisung in Excel (4 Beispiele)
  • Verwendung der VBA-Funktion Abs in Excel (9 Beispiele)
  • Verkettung in Excel VBA verwenden (4 Methoden)

7. die Funktion Monatsname

Sie gibt eine Zeichenkette zurück, die den angegebenen Monat darstellt.

Syntax :

Monatsname(Monat, [ Abkürzung ])

Argument:

Monat: Erforderlich ist die numerische Bezeichnung des Monats, z. B. Januar ist 1, Februar ist 2 und so weiter.

abkürzen: Optional: Boolescher Wert, der angibt, ob der Monatsname abgekürzt werden soll. Wird er übersprungen, ist der Standardwert False, was bedeutet, dass der Monatsname nicht abgekürzt wird.

Code-Schnipsel:

 Sub Monatsname_Funktion() Dim month_name As String month_name = Monatsname(9, True) MsgBox month_name End Sub 

Ausgabe:

Wie Sie sehen können, haben wir den Monatsnamen mit dieser VBA-Datumsfunktion gefunden.

8. wochentagsfunktion

Sie gibt eine Variante ( Integer ), die eine reelle Zahl besitzt, die den Wochentag angibt.

Syntax :

Wochentag(Datum, [ ersterTagderWoche ])

Argument:

Datum: Das erforderliche Datumsargument ist eine beliebige Variante, ein numerischer Ausdruck, ein String-Ausdruck oder eine beliebige Kombination und stellt ein Datum dar. Wenn das Datum Null enthält, wird auch Null zurückgegeben.

erster Tag der Woche: Optional: Eine Konstante, die den ersten Tag der Woche angibt. Wenn nicht festgelegt, wird Sonntag angenommen.

Die erster Tag der Woche hat diese Einstellungen:

vbSonntag - den Sonntag als den wichtigsten Tag der Woche zu nutzen.

vbMontag - setzt den Montag als ersten Tag der Woche ein.

vbDienstag - den Dienstag als ersten Tag der Woche.

vbMittwoch - setzt den Mittwoch als ersten Tag der Woche ein.

vbDonnerstag - den Donnerstag als den eigentlichen Tag der Woche.

vbFriday - setzt den Freitag als ersten Tag der Woche ein.

vbSamstag - ist der Samstag der erste Tag der Woche.

vbUseSystemDayOfTheWeek - verwendet den ersten Tag der Woche, der in den Einstellungen Ihres Geräts festgelegt ist.

Rückgabe-Parameter

Da diese Funktion eine ganze Zahl zurückgibt, haben diese Zahlen folgende Bedeutung

1 - Sonntag

2 - Montag

3 - Dienstag

4 - Mittwoch

5 - Donnerstag

6 - Freitag

7 - Samstag

Code-Schnipsel:

 Sub Wochentag_Funktion() Dim week_day As Integer week_day = Wochentag("4/27/2022") MsgBox week_day End Sub 

Ausgabe:

Wie Sie sehen, gibt die VBA-Datumsfunktion 4 zurück, also Mittwoch.

Verwandte Inhalte: Verwendung der Fix-Funktion in Excel VBA (4 Beispiele)

9. die VBA-Funktion Wochentagsname

Gibt eine Zeichenkette zurück, die den eingeschränkten Wochentag anzeigt.

Syntax :

Wochentagsname(Wochentag, Abkürzung, erster Tag der Woche)

Argument:

Wochentag: Erforderliches Feld. Die numerische Kennung für den Wochentag. Der numerische Wert eines jeden Tages hängt von der Einstellung des ersten Wochentags ab.

abkürzen: Optional: Boolescher Wert, der angibt, ob der Name des Wochentags gekürzt werden soll. Wird er übersprungen, ist der Standardwert False, was bedeutet, dass der Name des Wochentags nicht abgekürzt wird.

erster Tag der Woche: Optionales Feld. Numerischer Wert, der den ersten Tag der Woche angibt. Er kann verschiedene Werte haben.

Die erster Tag der Woche kann die folgenden Werte annehmen:

vbSonntag - den Sonntag als den wichtigsten Tag der Woche zu nutzen.

vbMontag - setzt den Montag als ersten Tag der Woche ein.

vbDienstag - den Dienstag als ersten Tag der Woche.

vbMittwoch - setzt den Mittwoch als ersten Tag der Woche ein.

vbDonnerstag - den Donnerstag als den eigentlichen Tag der Woche.

vbFriday - setzt den Freitag als ersten Tag der Woche ein.

vbSamstag - ist der Samstag der erste Tag der Woche.

vbUseSystemDayOfTheWeek - verwendet den ersten Tag der Woche, der in den Einstellungen Ihres Geräts festgelegt ist.

Code-Schnipsel:

 Sub Wochentagsname_Funktion() Dim wochentag_name As String wochentag_name = Wochentagsname(6) MsgBox wochentag_name End Sub 

Ausgabe:

Wie Sie sehen können, zeigen die obigen VBA-Codes den Namen des Wochentags an.

Verwandte Inhalte: Verwendung der VBA-Funktion Wochentagsname in Excel (2 Beispiele)

10. die Funktion Jahr in VBA Datum

Sie gibt eine Variante (Integer) mit einer reellen Zahl zurück, die das Jahr angibt.

Syntax :

Jahr(Datum)

Argument:

Das erforderliche Datumsargument ist eine beliebige Variante, ein numerischer Ausdruck, ein String-Ausdruck oder eine beliebige Kombination und stellt ein Datum dar. Wenn das Datum Null enthält, wird auch Null zurückgegeben.

Code-Schnipsel:

 Sub year_function() Dim date1, the_year date1 = #12/12/2023# the_year = Year(date1) MsgBox the_year End Sub 

Ausgabe:

Hier sehen Sie das Jahr des angegebenen Datums nach der Implementierung des VBA-Codes.

Lesen Sie mehr: Wie man die VBA-Ersetzungsfunktion in Excel verwendet (11 Anwendungen)

11. die Funktion FormatDateTime

Diese Funktion gibt einen Ausdruck zurück, der als Datum oder Uhrzeit formatiert ist.

Syntax :

FormatDateTime(Datum, [ NamedFormat ])

Argument:

Datum: Erforderliches Feld: Zu formatierender Datumsausdruck.

BenanntesFormat: Diese Angabe ist optional. Es handelt sich um einen numerischen Wert, der das Datums-/Zeitformat anzeigt. Wird dieser Wert nicht angegeben, wird das vbGeneralDate .

Die NamedFormat kann die folgenden Werte haben:

vbGeneralDate(0): Zeigt ein Datum und/oder eine Uhrzeit an. Wenn ein Datumsteil vorhanden ist, wird er als kurzes Datum ausgedrückt. Wenn ein Uhrzeitsteil vorhanden ist, wird er als lange Uhrzeit angezeigt. Wenn beide Teile vorhanden sind, werden sie angezeigt.

vbLongDate(1): Stellen Sie ein Datum dar, indem Sie die in den Ländereinstellungen Ihres Computers gewählte Konfiguration des langen Datums verwenden.

vbShortDate(2): Zeigen Sie ein Datum an, indem Sie das in den Ländereinstellungen Ihres Computers festgelegte kurze Datumsformat verwenden.

vbLongTime(3): Zeigen Sie eine Uhrzeit an, indem Sie das in den regionalen Einstellungen Ihres Computers festgelegte Zeitformat verwenden.

vbShortTime(4): Anzeige einer Uhrzeit im 24-Stunden-Format (hh:mm).

Code-Schnipsel:

 Sub FormatDateTime_Function() d = ("2022-02-03 18:25") MsgBox ("Format 1 : " & FormatDateTime(d)) MsgBox ("Format 2 : " & FormatDateTime(d, 1)) MsgBox ("Format 3 : " & FormatDateTime(d, 2)) MsgBox ("Format 4 : " & FormatDateTime(d, 3)) MsgBox ("Format 5 : " & FormatDateTime(d, 4)) End Sub 

Ausgabe:

Nach dem Ausführen des Codes werden die folgenden Dialogfelder angezeigt:

Hier können Sie alle Zeit- und Datumsformate in VBA sehen.

Lesen Sie mehr: Verwendung der VBA TimeValue-Funktion (6 relevante Beispiele)

12. die VBA-Funktion CDate

Die Funktion wandelt einen gültigen Datums- und Zeitausdruck in ein typisches Datum um.

Syntax :

CDate(Datum)

Argument:

Das erforderliche Datumsargument ist eine beliebige Variante, ein numerischer Ausdruck, ein String-Ausdruck oder eine beliebige Kombination und stellt ein Datum dar. Wenn das Datum Null enthält, wird auch Null zurückgegeben.

Code-Schnipsel:

 Sub Cdate_Function() Dim date1 As Variant Dim date2 As Variant date1 = CDate("Mar 11 2022") date2 = CDate("29 Sep 2023") MsgBox ("Erstes Datum : " & date1 & vbCrLf & "Zweites Datum : " & date2) End Sub 

Ausgabe:

Wie Sie sehen können, hat unser VBA-Code gerade ein typisches Datumsformat von Excel zurückgegeben.

Verwandte Inhalte: Verwendung der VBA DIR-Funktion in Excel (7 Beispiele)

Beispiele für VBA Date

In den folgenden Abschnitten stellen wir Ihnen drei praktische und geeignete Beispiele für die Verwendung von VBA im Zusammenhang mit dem Datum vor. Wir empfehlen Ihnen, alle Beispiele zu lesen und zu üben, um Ihre VBA-Kenntnisse zu verbessern. Los geht's.

1. überfällige Tage mit Datum in VBA berechnen

Die Bedeutung von "überfällig" ist "verspätet" oder "nach Ablauf der Frist", "verspätet", insbesondere "nach Ablauf einer Frist" oder "zu spät, um eine Anforderung zu erfüllen".

Angenommen, Sie müssen eine Aufgabe abgeben, die am Sonntag fällig ist, aber es ist Dienstag, und Sie haben sie noch nicht abgegeben. Man kann dies als zwei überfällige Tage bezeichnen.

Werfen Sie einen Blick auf den folgenden Datensatz:

Hier haben wir einen Datensatz mit einigen Studenten und deren Abgabedatum. Sie können das letzte Abgabedatum sehen. Unser Ziel ist es, das überfällige Datum basierend auf dem Abgabedatum zu finden. Um dies zu erreichen, folgen Sie diesen Schritten:

📌 Schritte

  • Drücken Sie zunächst Alt+F11 auf Ihrer Tastatur, um den VBA-Editor zu öffnen.
  • Wählen Sie dann Einfügen> Modul .

  • Geben Sie anschließend den folgenden Code ein:
 Sub overdue_days() Dim cell As Integer Dim J As Integer Dim due_date As Date due_date = #1/11/2022# For cell = 5 To 11 If Cells(cell, 4).Value = due_date Then Cells(cell, 5).Value = "Heute eingereicht" ElseIf Cells(cell, 4).Value> due_date Then J = due_date - Cells(cell, 4).Value J = Abs(J) Cells(cell, 5).Value = J & " Overdue Days" Else Cells(cell, 5).Value = "No Overdue" End If Next cellEnd Sub 

Wir haben die ABS-Funktion um das Minuszeichen zu entfernen.

  • Speichern Sie dann die Datei.
  • Danach drücken Sie Alt+F8 auf Ihrer Tastatur, um das Dialogfeld Makro zu öffnen.
  • Wählen Sie dann
  • Klicken Sie dann auf ausführen. .

Wie Sie sehen können, haben wir das Datum in VBA erfolgreich verwendet und die überfälligen Tage gefunden.

Ähnliche Lektüre

  • Wie man die VBA-Leerzeichenfunktion in Excel verwendet (3 Beispiele)
  • Verwendung der VBA-Funktion ChDir in Excel (4 geeignete Beispiele)
  • Verwendung der IsNull-Funktion in Excel VBA (5 Beispiele)
  • VBA While Wend-Anweisung in Excel verwenden (4 Beispiele)
  • Wie man ein Sub in VBA in Excel aufruft (4 Beispiele)

2. das Geburtsjahr aus dem Datum mit VBA ermitteln

Jetzt können Sie das Jahr ab einem bestimmten Datum finden, was ziemlich einfach ist.

Werfen Sie einen Blick auf den folgenden Datensatz:

Hier sehen Sie das Geburtsdatum einiger Personen. Unser Ziel ist es, das Geburtsjahr aus dem Datum zu extrahieren und auch das Geburtsjahr des letzten Eintrags Elizabeth.

📌 Schritte

  • Drücken Sie zunächst Alt+F11 auf Ihrer Tastatur, um den VBA-Editor zu öffnen.
  • Wählen Sie dann Einfügen>Modul .

  • Geben Sie anschließend den folgenden Code ein:
 Sub find_year() Dim last_entry As Date Dim cell As Integer For cell = 5 To 11 Cells(cell, 4).Value = Year(Cells(cell, 3).Value) If cell = 11 Then last_entry = Cells(cell, 3).Value End If Next cell MsgBox "Geburtsjahr des letzten Eintrags: " & Year(last_entry) End Sub 
  • Speichern Sie dann die Datei.
  • Danach drücken Sie Alt+F8 auf Ihrer Tastatur, um das Dialogfeld Makro zu öffnen.
  • Wählen Sie dann find_year .
  • Klicken Sie dann auf ausführen. .

Wie Sie sehen, ist es uns gelungen, das Geburtsjahr aus jedem Datum zu extrahieren und das Geburtsjahr des letzten Eintrags mit Hilfe des VBA-Datums in Excel zu ermitteln.

3. mit VBA Tage im Datum hinzufügen

Jetzt können Sie die Datumsvariable definieren und sie verwenden, um das Datum hinzuzufügen. Dazu verwenden wir das DateAdd Sie können diese Funktion verwenden, um Tage, Monate und Jahre zu einem bestimmten Datum hinzuzufügen.

Werfen Sie einen Blick auf den folgenden Datensatz:

Hier sehen Sie einige Namen und einige dazugehörige Daten. Unser Ziel ist es nun, zu diesen Daten fünf weitere Tage hinzuzufügen und ein neues Datum zu erzeugen.

📌 Schritte

  • Drücken Sie zunächst Alt+F11 auf Ihrer Tastatur, um den VBA-Editor zu öffnen.
  • Wählen Sie dann Einfügen>Modul .

  • Geben Sie anschließend den folgenden Code ein:
 Sub add_days() Dim first_date As Date Dim second_date As Date Dim cell As Integer For cell = 5 To 11 first_date = Cells(cell, 3).Value second_date = DateAdd("d", 5, first_date) Cells(cell, 4).Value = second_date Next cell End Sub 

Hier haben wir "d" als Argument in der Funktion DateAdd verwendet. Sie können es in "y" oder "m" ändern, um Jahre bzw. Monate hinzuzufügen,

  • Speichern Sie dann die Datei.
  • Danach drücken Sie Alt+F8 auf Ihrer Tastatur, um das Dialogfeld Makro zu öffnen.
  • Wählen Sie dann.
  • Klicken Sie dann auf ausführen. .

Wie Sie sehen können, haben wir erfolgreich Tage in ein Datum eingefügt, indem wir das Datum in VBA verwendet haben. Jetzt können Sie den Code nach Ihren Wünschen ändern.

💬 Dinge zum Merken

Die VBA-Datumsfunktion funktioniert eigentlich wie folgt die Funktion TODAY in Excel.

VBA DATE ist eine nichtflüchtige Funktion in Excel, d.h. sie behält die Daten auch bei einer Unterbrechung der Stromversorgung.

Grundsätzlich speichert VBA Datumswerte zum Zeitpunkt der Implementierung als DATE.

Wenn Sie also versuchen, eine Datumsvariable als String/Text zuzuweisen, wird ein Fehler auftreten.

Der Standardwert für Datum ist 0:00:00 (Mitternacht) am 1. Januar 0001.

Schlussfolgerung

Abschließend hoffe ich, dass dieses Tutorial Ihnen nützliches Wissen über das Datum in VBA-Codes vermittelt hat. Wir empfehlen Ihnen, all diese Anweisungen zu lernen und auf Ihren Datensatz anzuwenden. Laden Sie die Übungsmappe herunter und probieren Sie sie selbst aus. Geben Sie uns auch gerne Feedback im Kommentarbereich. Ihr wertvolles Feedback motiviert uns, Tutorials wie dieses zu erstellen.

Vergessen Sie nicht, unsere Website zu besuchen Exceldemy.com für verschiedene Excel-bezogene Probleme und Lösungen.

Lernen Sie weiter neue Methoden und wachsen Sie weiter!

Hugh West ist ein äußerst erfahrener Excel-Trainer und -Analyst mit über 10 Jahren Erfahrung in der Branche. Er verfügt über einen Bachelor-Abschluss in Rechnungswesen und Finanzen sowie einen Master-Abschluss in Betriebswirtschaft. Hugh hat eine Leidenschaft für das Unterrichten und hat einen einzigartigen Lehransatz entwickelt, der leicht zu befolgen und zu verstehen ist. Seine Expertenkenntnisse in Excel haben Tausenden von Studenten und Berufstätigen auf der ganzen Welt geholfen, ihre Fähigkeiten zu verbessern und in ihrer Karriere herausragende Leistungen zu erbringen. Über seinen Blog teilt Hugh sein Wissen mit der Welt und bietet kostenlose Excel-Tutorials und Online-Schulungen an, um Einzelpersonen und Unternehmen dabei zu helfen, ihr volles Potenzial auszuschöpfen.