VBA Datofunktion | Hvordan bruges Excel VBA Date-funktion?

Excel VBA DATE-funktion

VBA-dato er en dato- og tidsfunktion, den returnerer kun den aktuelle dato i henhold til den systemdato, du bruger, også det vigtige at bemærke er, at denne funktion overhovedet ikke har argumenter, en anden vigtig faktor at huske er, at denne funktion returnerer den aktuelle systemdato.

I Excel kan vi ikke leve uden nogle af funktionerne, og "VBA Date" er en af ​​disse funktioner. Hvis du er en hyppig bruger af Excel-regneark, skal du være opmærksom på en funktion kaldet "I DAG ()", som returnerer den aktuelle dato pr. Systemdatoen.

Datoen er en meget enkel funktion, og den returnerer kun den aktuelle dato pr. Den systemdato, du bruger. Dette fungerer meget lig vores regnearkfunktion “I DAG”, men er ikke ustabil.

Syntaksen for excel DATE-funktionen er meget enkel, fordi den ikke har noget argument at levere og kun indeholder tomme parenteser.

Dato ()

Parenthesis er der bare for at forklare funktionen, når du bruger funktionen, der er ikke behov for at gå ind i parentes.

Hvordan bruges Excel VBA Date-funktion?

Du kan downloade denne VBA Date Excel-skabelon her - VBA Date Excel-skabelon

Eksempel nr. 1

Antag, at du vil indsætte den aktuelle dato i celle A1, og følg nedenstående trin for at skrive koden for at indsætte den aktuelle dato i celle A1.

Trin 1: Opret et makronavn.

Kode:

 Underdato_eksempel1 ()

Trin 2: Da vi har brug for at gemme den aktuelle dato i celle A1, vil vores kode være Range (“A1”) .

Kode:

 Sub Date_Example1 () Range ("A1"). Value End Sub 

Trin 3: I celle A1 har vi brug for den aktuelle dato, så brug DATO-funktionen.

Kode:

 Sub Date_Example1 () Range ("A1") Værdi = Date End Sub 

Trin 4: Ok, vi er færdige. Lad os køre denne kode nu ved at trykke på F5-tasten, ellers kan du også køre koden manuelt som vist i nedenstående skærmbillede. Vi får den aktuelle dato i celle A1.

Så når jeg skriver denne kode, er den aktuelle dato i mit system "15. marts 2019".

Bemærk: Format  for din dato afhænger af dine Windows-indstillinger. Under alle omstændigheder kan du ændre formatet på datoen under formatceller.

Eksempel 2

Antag, at du er en LIC-agent, og at du har flere kunder at håndtere. Et af de vigtigste objekter er at vide, hvis betaling forfalder i dag, så du kan ringe til dem og samle betalingen med det samme.

Antag nedenfor er listen over kunder, du har i din database.

Jeg har allerede skrevet en kode, der giver dig besked, så snart du åbner excel-filen.

Kode:

 Sub Due_Notifier () Dim Duedate As Date Dim i As Long Duedate = Date i = 2 For i = 2 To Cells (Rows.Count, 1). End (xlUp). Row If Duedate = DateSerial (Year (Date), Month ( Celler (i, 3) .Værdi), Dag (Celler (i, 3) .Værdi)) Derefter MsgBox "Kundenavn:" & Celler (i, 1) .Værdi & vbNewLine & "Premium Beløb:" & Celler (i , 2). Værdi slut, hvis næste i slut sub 

Kopier ovenstående kode, og indsæt i VBA-modulet.

Dobbeltklik nu på "Denne projektmappe".

Vælg nu "Arbejdsbog" fra ovenstående rullemenu.

Så snart du vælger indstillingen "Arbejdsbog", kan du se, at en privat makro automatisk åbnes.

Her siger makronavn "Workbook_Open ()" det betyder, når denne projektmappe åbner det, du skal gøre. Når denne projektmappe åbnes, skal vi køre den makro, vi har oprettet.

Så her skal vi kalde vores makro, som vi har oprettet, ved navn. I ovenstående kode er vores makronavn "Due_Notifier".

Kode:

 Ring til Due_Notifier

Gem nu denne projektmappe, og luk den.

Når du har lukket den, skal du åbne projektmappen og se magien.

Nu åbner jeg….

Wow !!! Det viser mig kundens navn og deres forfaldne beløb for den aktuelle dato.

Customer Name is “Amar” and the due amount is “20883”. The reason why it is showing this customer name because the due date for Mr Amar is 15th March 2019 i.e. Today.

Now click on Ok, it will show other customer names if the due date is on today.

It is showing Mr Arvind name, his due date is also on 15th March 2019.

Now, you can easily identify the customer names as soon as you come to the office. One of the big headaches is gone.

Similarly, I have created one more excel macro which will send auto birthday emails from your outlook.

Example #3

Assume you are in an “Employee Engagement Team” and you are responsible to send birthday emails to your employees. Identify and sending the email to each and every one separately is a painful job.

Hello, my dear friend doesn’t worry I have created a macro for you to send the auto birthday emails to your employees.

I have created some data to test and below is the image of the same.

You just need to update the employee master according to the headings of the table. Below is the code to send the emails.

Copy the below code and paste in the module.

 Sub Birthday_Wishes() Dim OutlookApp As Outlook.Application Dim OutlookMail As Outlook.MailItem Dim Mydate As Date Dim i As Long Set OutlookApp = New Outlook.Application Mydate = Date i = 2 For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row Set OutlookMail = OutlookApp.CreateItem(olMailItem) If Mydate = DateSerial(Year(Date), Month(Cells(i, 5).Value), Day(Cells(i, 5).Value)) Then OutlookMail.To = Cells(i, 7).Value OutlookMail.CC = Cells(i, 8).Value OutlookMail.BCC = "" OutlookMail.Subject = "Happy Birthday - " & Cells(i, 2).Value OutlookMail.Body = "Dear " & Cells(i, 2).Value & "," & vbNewLine & vbNewLine & _ "We wish you a happy birhday on behalf of the management and we wish all the success in the coming future" & vbNewLine & _ vbNewLine & "Regards," & vbNewLine & "StrIDE Team" OutlookMail.Display OutlookMail.Send End If Next i End Sub 

As soon as you come to the office just open the file and run this code, it will automatically send birthday wishes to the respective email id’s.

Note: You should have Outlook configured in your system.