Excel VBA-Datum

Es gibt einige Funktionen, die wirklich sehr praktisch sind, und wir verschlucken unser Leben, ohne dass diese Funktionen ein VBA-Benutzer sind. Die DATE-Funktion ist eine jener Funktionen, die manchmal sehr nützlich sein können und einem Programmierer das Leben erleichtern können. In einer Excel-Tabelle gibt es eine Funktion namens TODAY (), die das aktuelle Datum als Ergebnis basierend auf dem Systemdatum angibt. In ähnlichen Zeilen verfügt VBA über die DATE-Funktion, die das aktuelle Datum basierend auf dem Systemdatum angibt.

Die VBA DATE-Funktion gibt als Ergebnis das aktuelle Datum basierend auf dem Systemdatum zurück und hat eine wirklich sehr einfache Syntax.

Für diese Funktion muss kein Argument übergeben werden. Sie enthält den Namen der Funktion und leere Klammern. Es ist nicht zwingend erforderlich, die Klammern beim Aufrufen dieser Funktion hinzuzufügen. Ist diese Funktion nicht wirklich einfach?

Die Syntax der DATE-Funktion in VBA.

Wie verwende ich die Excel VBA-Datumsfunktion?

Wir werden lernen, wie man eine VBA-Datumsfunktion verwendet, mit wenigen Beispielen in Excel.

Sie können diese VBA-Datums-Excel-Vorlage hier herunterladen - VBA-Datums-Excel-Vorlage

VBA-Datumsfunktion - Beispiel 1

Angenommen, Sie möchten das aktuelle Datum in MsgBox anzeigen. Wie kannst du das machen? Folgen Sie einfach den Schritten unten und Sie werden durch sein.

Schritt 1: Fügen Sie ein neues Modul in Ihren Visual Basic-Editor ein.

Schritt 2: Definieren Sie eine Unterprozedur zum Erstellen und Speichern eines Makros.

Code:

 Sub DateEx1 () End Sub 

Schritt 3: Definieren Sie eine Variable mit dem Namen CurrDate, die den Wert des aktuellen Datums enthalten kann. Da wir der Variablen im Begriff sind, einen Datumswert zuzuweisen, stellen Sie sicher, dass Sie ihn als Datum definieren.

Code:

 Sub DateEx1 () Dim CurrDate As Date End Sub 

Schritt 4: Weisen Sie der neu erstellten Variablen mit dem Zuweisungsoperator einen Wert des aktuellen Systemdatums zu. Sie müssen nur DATE hinzufügen, um den Datumswert zuzuweisen. Verwenden Sie den folgenden Code:

Code:

 Sub DateEx1 () Dim CurrDate As Date CurrDate = Datumsende Sub 

Schritt 5: Verwenden Sie MsgBox, um das aktuelle Systemdatum unter der Eingabeaufforderung Message Box anzuzeigen. Verwenden Sie die folgende Codezeile:

Code:

 Sub DateEx1 () Dim CurrDate As Date CurrDate = Date MsgBox "Das heutige Datum ist:" & CurrDate End Sub 

Schritt 6: Drücken Sie F5 oder führen Sie die Taste manuell aus, um diesen Code auszuführen. Sie können ein Meldungsfeld mit dem aktuellen Datum sehen, wie im folgenden Screenshot gezeigt.

Beachten Sie, dass das hier im Screenshot gezeigte Datum das Datum ist, an dem ich dieses Skript ausgeführt habe. Möglicherweise wird zum Zeitpunkt der Ausführung dieses Codes je nach Systemdatum ein anderes Datum angezeigt.

Dies ist das einfachste Beispiel für das Abrufen des aktuellen Datums. Sie können auch die Funktion Cells.Value verwenden, um den Datumswert in einer bestimmten Zelle Ihres Excel-Arbeitsblatts abzurufen.

VBA-Datumsfunktion - Beispiel 2

Fälligkeitsdatum der EMI-Hypothek

Angenommen, ich habe ein Arbeitsblatt und benötige ein System, das mir die Meldung „ Hey! Sie müssen Ihr EMI heute bezahlen. ”Jedes Mal, wenn ich mein Blatt öffne und der Wert in Zelle A1 ist, ist das aktuelle Systemdatum. Lassen Sie uns Schritt für Schritt sehen, wie wir das machen können.

Schritt 1: Fügen Sie ein neues Modul ein und definieren Sie eine neue Unterprozedur mit dem Namen auto_open (), um ein Makro zu erstellen. Mit auto_open () wird Ihr Makro bei jedem Öffnen des Arbeitsblatts automatisch ausgeführt.

Code:

 Sub auto_open () End Sub 

Schritt 2: Verwenden Sie die If-Bedingung, um den Wert des aktuellen Datums in Zelle A1 des Arbeitsblatts HomeLoan_EMI zuzuweisen.

Code:

 Sub auto_open () If Sheets ("HomeLoan_EMI"). Range ("A1"). Value = Date End Sub 

Schritt 3: Verwenden Sie nun Then in derselben Zeile nach IF, damit wir eine Anweisung hinzufügen können, die ausgeführt wird, solange if-condition wahr ist.

Code:

 Sub auto_open () If Sheets ("HomeLoan_EMI"). Range ("A1"). Value = Date Then End Sub 

Schritt 4: Fügen Sie eine Anweisung hinzu, die für die Bedingung ausgeführt werden soll, die wahr ist.

Code:

 Sub auto_open () If Sheets ("HomeLoan_EMI"). Range ("A1"). Value = Date Then MsgBox ("Hey! Sie müssen Ihre EMI heute bezahlen.") End Sub 

Diese Anweisung wird im Meldungsfeld angezeigt, sobald die If-Bedingung erfüllt ist.

Schritt 5: Wie wir wissen, brauchte jede IF-Bedingung immer eine Else-Bedingung. Fügen Sie dieser Schleife eine andere Bedingung hinzu.

Code:

 Sub auto_open () If Sheets ("HomeLoan_EMI"). Range ("A1"). Value = Date Then MsgBox ("Hey! Sie müssen Ihre EMI heute bezahlen.") Else Exit Sub End Sub 

Diese else-Bedingung beendet das automatische Öffnen von Macro, wenn ein Datum in Zelle A1 nicht das aktuelle Systemdatum ist.

Schritt 6: Beenden Sie die IF-Schleife mit der Anweisung End IF.

Code:

 Sub auto_open () If Sheets ("HomeLoan_EMI"). Range ("A1"). Value = Date Then MsgBox ("Hey! Sie müssen Ihre EMI heute bezahlen.") Else Exit Sub End If End Sub 

Schritt 7: Jetzt führt das System jedes Mal, wenn Sie Ihr Arbeitsblatt öffnen, automatisch den obigen Code aus und überprüft, ob der Datumswert in Zelle A1 Ihr EMI-Fälligkeitsdatum ist oder nicht. Wenn das EMI-Fälligkeitsdatum mit dem Systemdatum übereinstimmt, wird die folgende Meldung angezeigt:

VBA-Datumsfunktion - Beispiel # 3

VBA-Datum zur Ermittlung des Zahlungsempfängers der Kreditkartenabrechnung

Angenommen, ich habe eine Liste von Kunden, die eine Kreditkarte besitzen, und Sie möchten wissen, wer heute zur Zahlung fällig ist. Damit Sie sie anrufen und sofort per EOD zur Zahlung auffordern können.

VBA-Datum kann hilfreich sein, wenn Sie die Dinge automatisieren möchten, anstatt die Daten einzeln zu überprüfen. Mal sehen, wie das Schritt für Schritt geht:

Schritt 1: Definieren Sie ein neues Makro mithilfe einer Unterprozedur unter einem Modul.

Code:

 Sub DateEx3 () End Sub 

Schritt 2: Definieren Sie zwei neue Variablen, von denen eine nützlich ist, um den Code in einer Schleife abzuspielen, und eine andere, um den Wert des aktuellen Systemdatums zu speichern.

Code:

 Sub DateEx3 () Dim DateDue als Datum Dim i As Long DateDue = Datum i = 2 End Sub 

Schritt 3: Verwenden Sie nun den folgenden Code, um die Person zu suchen, die das Fälligkeitsdatum der Kreditkartenabrechnung als aktuelles Systemdatum hat. Mit diesem Code kann der Kunde, dessen Rechnungszahlung zum aktuellen Systemdatum fällig ist, zusammen mit dem Rechnungsbetrag überprüft werden.

Code:

 Sub DateEx3 () Dim DateDue As Date Dim i As Long DateDue = Date i = 2 For i = 2 To Sheets ("CC_Bill"). Zellen (Rows.Count, 1) .End (xlUp) .Row If DateDue = DateSerial ( Jahr (DateDue), Monat (Sheets ("CC_Bill"). Zellen (i, 3). Wert), Tag (Sheets ("CC_Bill"). Zellen (i, 3). Wert)) Dann MsgBox " & Sheets ("CC_Bill"). Cells (i, 1) .Value & vbNewLine & "Premium Amount:" & Sheets ("CC_Bill"). Cells (i, 2) .Value End If Next i End Sub 

Schritt 4: Führen Sie diesen Code aus, indem Sie F5 oder die Schaltfläche Ausführen manuell drücken und die Ausgabe anzeigen.

Bei der ersten Iteration sehen wir, dass Mohan derjenige ist, dessen Rechnung von 12.900 am 29. April 2019 fällig ist (aktuelles Systemdatum, an dem dieser Code ausgeführt wird). Wenn wir auf OK klicken, sehen wir den nächsten Kunden, dessen Rechnung am 29. April 2019 fällig ist (Rajani ist der nächste).

Dieser Code ist wirklich praktisch, wenn Sie Millionen von Kundenreihen haben, deren Rechnung an einem bestimmten Tag fällig ist. Bitte beachten Sie, dass alle in diesem Artikel erwähnten Skripte am 29. April 2019 ausgeführt werden. Möglicherweise erhalten Sie einen anderen Datumswert, wenn Sie diese Beispielcodes basierend auf dem Systemdatum ausführen.

Dinge, an die man sich erinnern sollte

  • Die Funktion VBA DATE gibt das aktuelle Systemdatum und parallel zur Funktion TODAY () von Excel zurück.
  • Die VBA-DATE-Funktion hat kein Argument, das in Excel übergeben werden muss. Muss nicht einmal die Klammern aufgerufen werden, während diese Funktion im Code verwendet wird.
  • VBA DATE ist eine nichtflüchtige Funktion in Excel.
  • VBA speichert Datumswerte als DATE zum Zeitpunkt der Ausführung. Definiert also keinen Variablenhaltewert als String / Integer. Es wird einen Fehler während der Ausführung des Codes verursachen.

Empfohlene Artikel

Dies war eine Anleitung zu Excel VBA Date. Hier haben wir die Verwendung von Excel VBA-Datumsfunktionen zusammen mit praktischen Beispielen und einer herunterladbaren Excel-Vorlage erläutert. Sie können auch unsere anderen Artikelvorschläge durchgehen -

  1. Was ist das VBA-Datumsformat?
  2. Excel Datum einfügen | Excel Tutorial
  3. VBA GoTo | Wie benutzt man?
  4. EDATE Excel Funktion (Formel, Beispiel)
  5. Was ist VBA DateSerial?

Kategorie: