Функция за дата на VBA | Как да използвам функцията за дата на Excel VBA?

Excel VBA DATE Функция

VBA Date е функция за дата и час, тя връща само текущата дата според системната дата, която използвате, също така важното е да се отбележи, че тази функция няма никакви аргументи в себе си, друг важен фактор, който трябва да запомните, е, че тази функция връща текущата системна дата.

В Excel не можем да живеем без някои от функциите и „VBA Date“ е една от тези функции. Ако сте чест потребител на работен лист на Excel, тогава трябва да сте наясно с функция, наречена „ДНЕС ()“, която ще върне текущата дата според системната дата.

Датата е много проста функция и връща само текущата дата според системната дата, която използвате. Това работи много подобно на функцията на нашия работен лист „ДНЕС“, но не е изменчиво.

Синтаксисът на функцията excel DATE е много прост, защото няма аргумент за предоставяне и включва само празни скоби.

Дата ()

Скобите са налице само за да обяснят функцията, когато използвате функцията, няма нужда да въвеждате скоби.

Как да използвам функцията за дата на Excel VBA?

Можете да изтеглите този шаблон на VBA за дата на Excel тук - VBA шаблон за Excel за дата

Пример # 1

Да предположим, че искате да вмъкнете текущата дата в клетка A1, след което следвайте стъпките по-долу, за да напишете кода, за да вмъкнете текущата дата в клетка A1.

Стъпка 1: Създайте име на макрос.

Код:

 Под Дата_Пример1 ()

Стъпка 2: Тъй като трябва да съхраним текущата дата в клетка A1, нашият код ще бъде Range („A1“). Стойност .

Код:

 Sub Date_Example1 () Диапазон ("A1"). Стойност Край Sub 

Стъпка 3: В клетка A1 се нуждаем от текущата дата, така че използвайте функцията DATE.

Код:

 Sub Date_Example1 () Диапазон ("A1"). Стойност = Дата Край Sub 

Стъпка 4: Добре, приключихме. Нека стартираме този код сега, като натиснете клавиша F5, или можете също да стартирате кода ръчно, както е показано на екрана по-долу. Ще получим текущата дата в клетка A1.

И така, когато пиша този код, текущата дата в моята система е „15 март 2019 г.“.

Забележка: Форматът  на вашата дата зависи от настройките на вашия Windows. Както и да е, можете да промените формата на датата под форматираните клетки.

Пример # 2

Да приемем, че сте агент на LIC и имате няколко клиенти, с които да се справите. Един от ключовите обекти е да знаете чие плащане е днес, за да можете да им се обадите и да ги вземете незабавно.

Да приемем, че по-долу е списъкът с клиенти, които имате във вашата база данни.

Вече написах код, който ще ви уведоми веднага щом отворите файла на Excel.

Код:

 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 ( Cells (i, 3) .Value), Day (Cells (i, 3) .Value)) Тогава MsgBox "Име на клиента:" & Cells (i, 1) .Value & vbNewLine & "Premium Сума:" & Клетки (i , 2) .Value End If Next i End Sub 

Копирайте горния код и поставете в модула VBA.

Сега щракнете двукратно върху опцията „Тази работна книга“.

Сега изберете „Workbook“ от горното падащо меню.

Веднага след като изберете опцията „Работна книга“, можете да видите, че автоматично се отваря частен макрос.

Тук името на макроса казва „Workbook_Open ()“, което означава, когато тази работна книга отвори какво трябва да направите. Всеки път, когато се отвори тази работна книга, трябва да стартираме създадения от нас макрос.

И така, тук трябва да наречем нашия макрос, който сме създали, с неговото име. В горния код нашето име на макрос е „Due_Notifier“.

Код:

 Обадете се на Due_Notifier

Сега запазете тази работна книга и я затворете.

След като го затворите, отворете работната книга и вижте магията.

Сега ще отворя ...

Еха!!! Показва ми името на клиента и дължимата им сума за текущата дата.

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.