Date VBA Excel

Il y a certaines fonctions qui sont vraiment très pratiques, et nous étranglons notre vie sans que ces fonctions soient un utilisateur VBA. La fonction DATE est l'une de ces fonctions qui peut être très utile à certains moments et peut faciliter la vie d'un programmeur. Dans une feuille de calcul Excel, il existe une fonction appelée AUJOURD'HUI () qui donne la date actuelle en tant que résultat basé sur la date système. Sur des lignes similaires, VBA a une fonction DATE qui donne la date actuelle en fonction de la date du système.

La fonction VBA DATE renvoie la date actuelle en fonction de la date système et a une syntaxe vraiment très simple.

Cette fonction n'a pas d'argument à transmettre avec le nom de la fonction et des parenthèses vides. Il n'est pas obligatoire d'ajouter également les parenthèses lors de l'appel de cette fonction. Cette fonction n'est-elle pas vraiment simple dans la nature?

La syntaxe de la fonction DATE dans VBA.

Comment utiliser la fonction de date Excel VBA?

Nous allons apprendre à utiliser une fonction Date VBA avec quelques exemples dans Excel.

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

Fonction de date VBA - Exemple # 1

Supposons que vous vouliez voir la date actuelle dans MsgBox. Comment peux-tu faire ça? Suivez simplement les étapes ci-dessous et vous aurez terminé.

Étape 1: insérez un nouveau module dans votre éditeur Visual Basic.

Étape 2: définir une sous-procédure pour écrire créer et enregistrer une macro.

Code:

 Sub DateEx1 () End Sub 

Étape 3: Définissez une variable nommée CurrDate qui peut contenir la valeur de la date actuelle. Puisque nous sommes sur le point d'attribuer une valeur de date à la variable, assurez-vous de la définir comme date.

Code:

 Sub DateEx1 () Dim CurrDate As Date End Sub 

Étape 4: à l' aide de l'opérateur d'affectation, affectez une valeur de la date système actuelle à la variable nouvellement créée. Il vous suffit d'ajouter la DATE pour attribuer la valeur de la date. Utilisez le code suivant:

Code:

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

Étape 5: utilisez MsgBox pour pouvoir voir la date actuelle du système sous l'invite de la boîte de message. Utilisez la ligne de code ci-dessous:

Code:

 Sub DateEx1 () Dim CurrDate As Date CurrDate = Date MsgBox "La date du jour est:" & CurrDate End Sub 

Étape 6: Appuyez sur F5 ou exécutez le bouton manuellement pour exécuter ce code. Vous pourrez voir une boîte de message comme indiqué dans la capture d'écran ci-dessous avec la date actuelle.

Notez que la date indiquée ici dans la capture d'écran est la date à laquelle j'ai exécuté ce script. Vous obtenez peut-être une date différente au moment où vous exécutez ce code, en fonction de la date de votre système.

Il s'agit de l'exemple le plus simple pour obtenir la date actuelle. Vous pouvez également utiliser la fonction Cells.Value pour obtenir la valeur de date dans une cellule particulière de votre feuille Excel.

Fonction de date VBA - Exemple # 2

Date d'échéance du paiement du prêt immobilier EMI

Supposons que j'ai une feuille de calcul et que j'ai besoin d'un système pour me montrer un message « Hey! Vous devez payer votre EMI aujourd'hui. «Chaque fois que j'ouvre ma feuille et que la valeur dans la cellule A1 est la date actuelle du système. Voyons étape par étape comment nous pouvons le faire.

Étape 1: insérez un nouveau module et définissez une nouvelle sous-procédure nommée auto_open () pour créer une macro. auto_open () permet à votre macro de s'exécuter automatiquement chaque fois que vous ouvrez la feuille de calcul.

Code:

 Sub auto_open () End Sub 

Étape 2: utilisez la condition If pour affecter la valeur de la date actuelle dans la cellule A1 de la feuille de calcul HomeLoan_EMI.

Code:

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

Étape 3: Maintenant, utilisez Then sur la même ligne après IF afin que nous puissions ajouter une instruction qui s'exécutera tant que la condition if est vraie.

Code:

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

Étape 4: Ajoutez une instruction à exécuter pour la condition qui est vraie.

Code:

 Sub auto_open () If Sheets ("HomeLoan_EMI"). Range ("A1"). Value = Date Then MsgBox ("Hey! Vous devez payer votre EMI aujourd'hui.") End Sub 

Cette instruction apparaîtra sous la boîte de message dès que la condition If est vraie.

Étape 5: Comme nous le savons, chaque condition IF avait toujours besoin d'une condition Else. Ajoutez une condition Else à cette boucle.

Code:

 Sub auto_open () If Sheets ("HomeLoan_EMI"). Range ("A1"). Value = Date Then MsgBox ("Hey! Vous devez payer votre EMI aujourd'hui.") Else Exit Sub End Sub Sub 

Cette condition sinon mettra fin à l'ouverture automatique de la macro si une date dans la cellule A1 n'est pas la date système actuelle.

Étape 6: Enfin, terminez la boucle IF en utilisant l'instruction End IF.

Code:

 Sub auto_open () If Sheets ("HomeLoan_EMI"). Range ("A1"). Value = Date Then MsgBox ("Hey! Vous devez payer votre EMI aujourd'hui.") Sinon Quitter Sub End Si End Sub 

Étape 7: C'est tout, chaque fois que vous ouvrez votre feuille de calcul, le système exécutera automatiquement le code ci-dessus et verra si la valeur de date dans la cellule A1 est votre date d'échéance EMI ou non. Si la date d'échéance EMI est égale à la date du système, le message suivant s'affiche:

Fonction de date VBA - Exemple # 3

Date VBA pour connaître le bénéficiaire de la facture de carte de crédit

Supposons que j'ai une liste de clients qui ont une carte de crédit et que vous voulez savoir qui doit payer aujourd'hui. Pour que vous puissiez les appeler et leur demander de payer leur dû immédiatement par EOD.

VBA Date pourrait être pratique pour vous permettre d'automatiser les choses au lieu de vérifier les dates une par une. Voyons comment procéder étape par étape:

Étape 1: définir une nouvelle macro à l'aide d'une sous-procédure sous un module.

Code:

 Sub DateEx3 () End Sub 

Étape 2: Définissez deux nouvelles variables dont l'une sera utile pour boucler le code et une autre afin de conserver la valeur de la date système actuelle.

Code:

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

Étape 3: Utilisez maintenant le code suivant qui aide à rechercher la personne qui a une date d'échéance de facture de carte de crédit comme date actuelle du système. Ce code permet de vérifier le client qui a le paiement de la facture dû à la date actuelle du système avec le montant de la facture.

Code:

 Sub DateEx3 () Dim DateDue As Date Dim i As Long DateDue = Date i = 2 For i = 2 To Sheets ("CC_Bill"). Cells (Rows.Count, 1) .End (xlUp) .Row If DateDue = DateSerial ( Year (DateDue), Month (Sheets ("CC_Bill"). Cells (i, 3) .Value), Day (Sheets ("CC_Bill"). Cells (i, 3) .Value)) Puis MsgBox "Customer Name:" & Sheets ("CC_Bill"). Cells (i, 1) .Value & vbNewLine & "Premium Amount:" & Sheets ("CC_Bill"). Cells (i, 2) .Value End If Next Next End End Sub 

Étape 4: exécutez ce code en appuyant sur F5 ou sur le bouton Exécuter manuellement et voyez la sortie.

À la première itération, nous pouvons voir que Mohan est celui qui a le projet de loi de 12900 dû le 29-avr-2019 (date système actuelle à laquelle ce code est exécuté). Si nous cliquons sur OK, nous pouvons voir le prochain nom de client qui a une facture due le 29 avril 2019 (Rajani est le prochain).

Ce code sera vraiment utile lorsque vous avez des millions de lignes de clients dont la facture est due un jour particulier. Veuillez noter que tous les scripts mentionnés dans cet article sont exécutés le 29 avril 2019. Vous pouvez obtenir une valeur de date différente lorsque vous exécutez cet exemple de code en fonction de la date système.

Choses dont il faut se rappeler

  • La fonction VBA DATE renvoie la date système actuelle et en parallèle à la fonction TODAY () d'Excel.
  • La fonction VBA DATE n'a aucun argument à transmettre dans Excel. N'a même pas besoin d'appeler les parenthèses lors de l'utilisation de cette fonction dans le code.
  • VBA DATE est une fonction non volatile dans Excel.
  • VBA stocke les valeurs de date sous la forme DATE au moment de l'exécution. Donc, ne définit pas une valeur de maintien de variable comme une chaîne / un entier. Cela entraînera une erreur lors de l'exécution du code.

Articles recommandés

Cela a été un guide pour Excel VBA Date. Ici, nous avons discuté de la façon d'utiliser les fonctions de date Excel VBA avec des exemples pratiques et un modèle Excel téléchargeable. Vous pouvez également consulter nos autres articles suggérés -

  1. Qu'est-ce que le format de date VBA?
  2. Excel Insérer la date | Tutoriel Excel
  3. VBA GoTo | Comment utiliser?
  4. Fonction EDATE Excel (formule, exemple)
  5. Qu'est-ce que VBA DateSerial?

Catégorie: