Fonction de date VBA

Fonction Excel VBA DATE

La date VBA est une fonction de date et d'heure, elle ne renvoie que la date actuelle selon la date système que vous utilisez, également la chose importante à noter est que cette fonction ne contient aucun argument, un autre facteur important à retenir est que cette fonction renvoie la date système actuelle.

Dans Excel, nous ne pouvons pas vivre sans certaines des fonctions et «VBA Date» est l'une de ces fonctions. Si vous êtes un utilisateur fréquent de la feuille de calcul Excel, vous devez être conscient d'une fonction appelée «AUJOURD'HUI ()» qui renverra la date actuelle selon la date du système.

La date est une fonction très simple et elle ne renvoie que la date actuelle selon la date système que vous utilisez. Cela fonctionne de manière très similaire à notre fonction de feuille de calcul «AUJOURD'HUI» mais pas de nature volatile.

La syntaxe de la fonction Excel DATE est très simple car elle n'a aucun argument à fournir et ne comprend que des parenthèses vides.

Date ()

Les parenthèses sont là juste pour expliquer la fonction lorsque vous utilisez la fonction pas besoin de saisir des parenthèses.

Comment utiliser la fonction de date Excel VBA?

Vous pouvez télécharger ce modèle Excel de date VBA ici - Modèle Excel de date VBA

Exemple 1

Supposons que vous souhaitiez insérer la date actuelle dans la cellule A1, puis suivez les étapes ci-dessous pour écrire le code pour insérer la date actuelle dans la cellule A1.

Étape 1: Créez un nom de macro.

Code:

 Sous-Date_Exemple1 ()

Étape 2: Puisque nous devons stocker la date actuelle dans la cellule A1, notre code sera Range («A1») .

Code:

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

Étape 3: Dans la cellule A1, nous avons besoin de la date actuelle, utilisez donc la fonction DATE.

Code:

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

Étape 4: Ok, nous avons terminé. Exécutons ce code maintenant en appuyant sur la touche F5 ou vous pouvez également exécuter le code manuellement, comme indiqué dans la capture d'écran ci-dessous. Nous obtiendrons la date actuelle dans la cellule A1.

Ainsi, lorsque j'écris ce code, la date actuelle dans mon système est le «15 mars 2019».

Remarque: le format  de votre date dépend de vos paramètres Windows. Quoi qu'il en soit, vous pouvez modifier le format de la date sous les cellules de format.

Exemple # 2

Supposons que vous soyez un agent LIC et que vous ayez plusieurs clients à traiter. L'un des objectifs clés est de savoir à qui le paiement est dû aujourd'hui afin que vous puissiez les appeler et encaisser le paiement immédiatement.

Supposons ci-dessous la liste des clients que vous avez dans votre base de données.

J'ai déjà écrit un code qui vous avertira dès que vous ouvrirez le fichier Excel.

Code:

 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)) Puis MsgBox "Nom du client:" & Cells (i, 1) .Value & vbNewLine & "Montant Premium:" & Cells (i , 2) .Value End If Next i End Sub 

Copiez le code ci-dessus et collez-le dans le module VBA.

Maintenant, double-cliquez sur l'option «Ce classeur».

Sélectionnez maintenant «Classeur» dans la liste déroulante ci-dessus.

Dès que vous sélectionnez l'option «Classeur», vous pouvez voir qu'une macro privée s'ouvre automatiquement.

Ici, le nom de la macro indique «Workbook_Open ()», cela signifie chaque fois que ce classeur ouvre ce que vous devez faire. Chaque fois que ce classeur s'ouvre, nous devons exécuter la macro que nous avons créée.

Donc, ici, nous devons appeler notre macro que nous avons créée par son nom. Dans le code ci-dessus, le nom de notre macro est «Due_Notifier».

Code:

 Appeler Due_Notifier

Maintenant, enregistrez ce classeur et fermez-le.

Après l'avoir fermé, ouvrez le classeur et voyez la magie.

Maintenant, je vais ouvrir….

Sensationnel!!! Il me montre le nom du client et son montant dû pour la date actuelle.

Le nom du client est «Amar» et le montant dû est «20883». La raison pour laquelle il affiche ce nom de client parce que la date d'échéance pour M. Amar est le 15 mars 2019, c'est-à-dire aujourd'hui.

Cliquez maintenant sur Ok, il affichera d'autres noms de clients si la date d'échéance est aujourd'hui.

Il montre le nom de M. Arvind, sa date d'échéance est également le 15 mars 2019.

Désormais, vous pouvez facilement identifier les noms des clients dès votre arrivée au bureau. L'un des gros maux de tête a disparu.

De même, j'ai créé une autre macro Excel qui enverra des e-mails d'anniversaire automatiques à partir de vos perspectives.

Exemple # 3

Supposons que vous soyez dans une «équipe de mobilisation des employés» et que vous êtes responsable d'envoyer des courriels d'anniversaire à vos employés. Identifier et envoyer l'e-mail à chacun séparément est un travail pénible.

Bonjour, mon cher ami ne vous inquiétez pas, j'ai créé une macro pour que vous puissiez envoyer les e-mails d'anniversaire automatiques à vos employés.

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.