DateAdd, fonction (Visual Basic)
Retourne une valeur Date contenant une valeur de date et d'heure auxquelles un intervalle de temps spécifié a été ajouté.
Public Overloads Function DateAdd( _ ByVal Interval As DateInterval, _ ByVal Number As Double, _ ByVal DateValue As DateTime _ ) As DateTime ' -or- Public Overloads Function DateAdd( _ ByVal Interval As String, _ ByVal Number As Double, _ ByVal DateValue As Object _ ) As DateTime
Paramètres
- Interval
-
Requis. Valeur d'énumération DateInterval ou expression String représentant l'intervalle de temps que vous souhaitez ajouter.
- Number
-
Requis. Double. Expression à virgule flottante représentant le nombre d'intervalles à ajouter. Number peut être positif (pour obtenir des valeurs date/heure à venir) ou négatif (pour représenter des valeurs date/heures passées). Toute partie fractionnaire de Number est ignorée.
- DateValue
-
Requis. Date. Expression qui représente la date et l'heure à laquelle l'intervalle sera ajouté. DateValue lui-même n'est pas modifié dans le programme appelant.
L'argument Interval peut prendre l'une des valeurs suivantes :
| Valeur d'énumération | Chaîne | Unité de l'intervalle de temps à ajouter |
|---|---|---|
| DateInterval.Day | d | Jour ; seule la valeur entière est prise en compte |
| DateInterval.DayOfYear | y | Jour ; seule la valeur entière est prise en compte |
| DateInterval.Hour | h | Heure ; seule la valeur entière est prise en compte |
| DateInterval.Minute | n | Minute ; seule la valeur entière est prise en compte |
| DateInterval.Month | m | Mois ; seule la valeur entière est prise en compte |
| DateInterval.Quarter | q | Trimestre ; seule la valeur entière est prise en compte |
| DateInterval.Second | s | Seconde ; seule la valeur entière est prise en compte |
| DateInterval.Weekday | w | Jour ; seule la valeur entière est prise en compte |
| DateInterval.WeekOfYear | ww | Semaine ; seule la valeur entière est prise en compte |
| DateInterval.Year | yyyy | Année ; seule la valeur entière est prise en compte |
| Type d'exception | Numéro de l'erreur | Condition |
|---|---|---|
| DateValue ne peut pas être converti en Date. | ||
| Interval n'est pas valide. | ||
| La date calculée est antérieure à 00:00:00 le 1er janvier de l'année 1 ou ultérieure à 23:59:59 le 31 décembre 9999. |
Consultez la colonne « Numéro d'erreur » si vous mettez à niveau des applications Visual Basic 6.0 qui utilisent la gestion des erreurs non structurée. (Vous pouvez comparer le numéro d'erreur par rapport à Number, propriété (objet Err).) Toutefois, lorsque cela est possible, vous devez envisager de remplacer un tel contrôle d'erreur par Vue d'ensemble de la gestion structurée des exceptions pour Visual Basic.
Utilisez la fonction DateAdd pour ajouter ou soustraire à une date un intervalle de temps spécifié. Vous pouvez, par exemple, calculer une date distante de 30 jours ou une heure précédant de 45 minutes l'heure actuelle.
Pour ajouter des jours à DateValue, vous pouvez utiliser DateInterval.Day, DateInterval.DayOfYear ou DateInterval.Weekday. Ceux-ci sont traités comme équivalents parce que DayOfYear et Weekday ne sont pas des intervalles de temps explicites.
La fonction DateAdd ne retourne jamais de date non valide. Si nécessaire, la partie jour de la date obtenue est ajustée à la baisse sur le dernier jour du mois obtenu de l'année obtenue. Dans l'exemple suivant, un mois est ajouté à la date du 31 janvier :
Dim NextMonth As Date = DateAdd(DateInterval.Month, 1, #1/31/1995#)
Dans cet exemple, DateAdd retourne #2/28/1995#, pas #2/31/1995#. Si DateValue a la valeur #1/31/1996#, la date #2/29/1996# est retournée, car 1996 est une année bissextile.
Remarque |
|---|
| DateAdd utilise le paramètre de calendrier actuel de la propriété CurrentCulture de la classe CultureInfo dans l'espace de noms System.Globalization. Les valeurs par défaut de CurrentCulture dépendent des paramètres du Panneau de configuration. |
Étant donné que chaque valeur Date est prise en charge par une structure DateTime, ses méthodes vous donnent des possibilités supplémentaires pour ajouter des intervalles de temps. Exemple : vous pouvez ajouter à une variable Date un nombre décimal de jours, arrondi à la milliseconde la plus proche, de la façon suivante :
Dim NextTime As Date = Now ' Current date and time. NextTime = NextTime.AddDays(3.4) ' Increment by 3 2/5 days.
Cet exemple prend une date et affiche une date correspondante dans le futur selon le nombre de mois spécifié, à l'aide de la fonction DateAdd.
Dim Msg, Number, StartDate As String 'Declare variables. Dim Months As Double Dim SecondDate As Date Dim IntervalType As DateInterval IntervalType = DateInterval.Month ' Specifies months as interval. StartDate = InputBox("Enter a date") SecondDate = CDate(StartDate) Number = InputBox("Enter number of months to add") Months = Val(Number) Msg = "New date: " & DateAdd(IntervalType, Months, SecondDate) MsgBox(Msg)
Espace de noms : Microsoft.VisualBasic
Module : DateAndTime
Assembly : bibliothèque Visual Basic Runtime (dans Microsoft.VisualBasic.dll)
Remarque