Excel VBA DateAdd

VBA DateAdd est une fonction qui effectue l'addition ou la soustraction d'intervalles de temps / date. Cela renverra la date en ajoutant ou en soustrayant un intervalle de temps spécifié. Il est assez difficile de gérer la date et l'heure lorsque vous effectuez des calculs à ce sujet. Mais dans notre travail quotidien, il s'agit d'un type de données essentiel que nous pouvons utiliser. La comparaison, l'addition, la soustraction entre différentes dates sont quelques opérations familières que nous faisons.

Formule pour la fonction DateAdd dans Excel VBA

La formule de la fonction VBA DateAdd est très simple au format.

Voyons quels sont les paramètres utilisés dans la fonction Excel VBA DateAdd.

  • Intervalle: il peut s'agir d'un intervalle heure / date que vous souhaitez ajouter ou soustraire. Cela représente le type de valeur que vous souhaitez ajouter ou soustraire. Cela peut être une composante de la date ou de l'heure comme les jours, le mois, etc. La portée des intervalles est indiquée ci-dessous.

  • Nombre: c'est le nombre d'intervalles que vous souhaitez ajouter. Utilisez un nombre positif pour ajouter l'intervalle avec la date donnée et une valeur négative pour soustraire l'intervalle de la date.
  • Date : date à laquelle vous souhaitez ajouter / soustraire l'intervalle. Les opérations seront effectuées à cette date et date de retour en sortie.

Exemples de fonction Excel VBA DateAdd

Voici les différents exemples de la fonction DateAdd dans Excel VBA:

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

Exemple # 1 - Ajouter une date

Voyons comment ajouter un numéro particulier avec la date donnée à l'aide de la fonction VBA DateAdd.

  • Nous devons trouver la date après avoir ajouté «10» jours avec la date «25/10/2015»
  • Lancer la sous-procédure avec un nom. Ici, nous avons créé une sous-procédure nommée «adddate».

Code:

 Sub adddate () End Sub 

  • Créez une variable comme type de données date, le nom de la variable est la date actuelle.

Code:

 Sub adddate () Dim currentdate As Date End Sub 

  • Nous allons stocker le résultat dans cette variable currentdate.
  • Nous voulons ajouter «10» jours avec «25/10/2015». Le nombre de jours à ajouter est donc de 10. Et l'intervalle est 'd' et le nombre est 10.
  • Appliquons donc la fonction VBA DateAdd comme ci-dessous.

Code:

 Sub adddate () Dim currentdate As Date currentdate = DateAdd ("d", 10, "25/10/2015") End Sub 

  • Après avoir appliqué la formule à la variable, utilisons une boîte de message pour imprimer le résultat.

Code:

 Sub adddate () Dim currentdate As Date currentdate = DateAdd ("d", 10, "25/10/2015") MsgBox Format (currentdate, "dd-mm-yyyy") End Sub 

  • Exécutez le code en appuyant sur F5. Le résultat sera affiché comme

Vous pouvez voir le résultat comme indiqué ci-dessus.

Exemple # 2 - Ajouter des mois

  • Pour ajouter des mois avec la date donnée, l'intervalle doit changer en «m».
  • Ajoutez «2» avec la date «15/2/2017». Le code peut être écrit comme ci-dessous.

Code:

 Sub addmonth () Dim currentdate As Date currentdate = DateAdd ("m", 2, "15/2/2017") MsgBox Format (currentdate, "dd-mm-yyyy") End Sub 

  • La date de sortie sera modifiée comme ci-dessous.

Exemple # 3 - Ajouter une année

Pour ajouter des années à la date indiquée, le code ci-dessous peut être utilisé.

  • L'intervalle doit être «aaaa»
  • Ajoutez 4 ans avec '20 / 2/2018 '

Code:

 Sub addyear () Dim currentdate As Date currentdate = DateAdd ("yyyy", 4, "20/2/2018") MsgBox Format (currentdate, "dd-mm-yyyy") End Sub 

  • Le résultat sera comme ci-dessous. La variable currentdate renverra '20 / 2/2022 '

Exemple # 4 - Ajouter un trimestre

  • Lors de l'ajout du trimestre, trois mois seront ajoutés à la date depuis le trimestre si 12 mois est 3.
  • L'intervalle doit être mentionné comme «Q», le nombre donné dans la formule spécifie le nombre de trimestres à ajouter. Par exemple, DateAdd («Q», 2, «22/5/2019») nombre de trimestres est 2, donc 6 mois seront ajoutés.
  • Pour ajouter 2 trimestres avec '22 / 5/2018 'ci-dessous, le code peut être utilisé.

Code:

 Sub addquarter () Dim currentdate As Date currentdate = DateAdd ("Q", 2, "22/5/2019") MsgBox Format (currentdate, "dd-mm-yyyy") End Sub 

  • Le résultat sera comme ci-dessous.

Exemple # 5 - Ajouter des secondes

  • Vous pouvez ajouter l'heure ainsi que la date affichée. Pour obtenir cette mention, l'intervalle comme «s» qui indique les secondes.
  • Pour afficher cinq secondes avec la date '28 / 3/2019 ', vous pouvez utiliser la formule ci-dessous.

Code:

 Sub addececonds () Dim currentdate As Date currentdate = DateAdd ("s", 5, "28/3/2019") MsgBox Format (currentdate, "dd-mm-yyyy hh: mm: ss") End Sub 

  • Tout en affichant la sortie avec la date, les secondes seront affichées.

Exemple # 6 - Ajouter des semaines

  • Pour ajouter un nombre de semaines à la date indiquée, utilisez l'intervalle comme «WW»
  • Code pour trouver la date après le nombre de semaines donné du '27 / 03/2016 '

Code:

 Sub addweek () Dim currentdate As Date currentdate = DateAdd ("WW", 2, "27/3/2019") Format MsgBox (currentdate, "dd-mm-yyyy") End Sub 

  • La sortie sera la date après 2 semaines.

Exemple # 7 - Ajouter des heures

  • Pour obtenir une heure particulière avec une date, cela est utilisé.
  • Dans l'intervalle, mentionnez le «h» et changez également le format de la sortie.
  • Le code pour imprimer les heures avec une date est.

Code:

 Sub addhour () Dim currentdate As Date currentdate = DateAdd ("h", 12, "27/3/2019") MsgBox Format (currentdate, "dd-mm-yyyy hh: mm: ss") End Sub 

  • Le résultat sera affiché avec le temps en hh: mm: ss.

Exemple # 8 - Comment soustraire des semaines à l'aide de la fonction VBA DateAdd?

Semblable à l'addition, la soustraction peut également être effectuée à l'aide de la fonction VBA DateAdd. Les nombres spécifiés sous forme d'entiers positifs avec la formule. Pour effectuer une soustraction, utilisez ces nombres sous forme d'entiers négatifs. Par exemple, modifiez la formule comme ci-dessous.

 DateAdd (intervalle, - nombre, date) 

En utilisant la méthode ci-dessus, nous essaierons de trouver le jour en soustrayant trois semaines du '28 / 3/2019 '

  • Créez une sous-procédure en tant que sous-date.

Code:

 Sub subdate () End Sub 

  • Définissez une variable pour stocker le résultat. Currentdate est une variable de type date pour affecter le résultat final.

Code:

 Sub subdate () Dim currentdate As Date End Sub 

  • Pour soustraire trois semaines du '28 / 3/2019 ', la formule sera appliquée. DateAdd («ww», -3, «28/3/2019»)

Code:

 Sub subdate () Dim currentdate As Date currentdate = DateAdd ("ww", -3, "28/3/2019") End Sub 

'-3' indique que la soustraction "ww" est l'intervalle puisque nous voulons opérer sur des semaines.

  • La formule est appliquée et le résultat est stocké dans la date actuelle.

Code:

 Sub subdate () Dim currentdate As Date currentdate = DateAdd ("ww", -3, "28/3/2019") MsgBox Format (currentdate, "dd-mm-yyyy") End Sub 

  • Le résultat après avoir soustrait trois semaines de la date indiquée est affiché ci-dessous.

Choses dont il faut se rappeler

  • L'intervalle et la date mentionnés dans la formule seront indiqués dans un double devis.
  • Si vous utilisez l'intervalle de semaine "w", cela fonctionnera de la même manière que l'intervalle de jour "d" car le jour de la semaine calcule 1 = dimanche, 2 = lundi, etc. dans Ainsi, il comptera les jours fériés même si vous utilisez les jours de la semaine.
  • La sortie sera affichée en fonction des paramètres de format de date sur votre système. Utilisez le format avec une boîte de message pour imprimer le résultat dans le format souhaité.
  • Dans la fonction VBA DateAdd, utilisez le nombre comme négatif pour effectuer une soustraction entre les dates.

Articles recommandés

Ceci est un guide de la fonction Excel VBA DateAdd. Nous discutons ici des exemples de la fonction VBA DateAdd pour ajouter et soustraire des jours, des mois et des années à partir de la date donnée, ainsi que des exemples pratiques et un modèle Excel téléchargeable. Vous pouvez également consulter nos autres articles suggérés -

  1. Comment utiliser la fonction Date dans VBA?
  2. Format de date dans Excel VBA
  3. Qu'est-ce que le temps VBA dans Excel?
  4. Formule de date dans Excel avec des exemples

Catégorie: