UDF > Date >


_DateAdd

Calcule une nouvelle date/heure en ajoutant/soustrayant un nombre d'intervalles de temps spécifié à partir d'une date/heure initiale

#include <Date.au3>
_DateAdd ( $sType, $iNumber, $sDate )

Paramètres

$sType Intervalle de temps à utiliser:
D - Ajoute/soustrait des jours à la date spécifiée
M - Ajoute/soustrait des mois à la date spécifiée
Y - Ajoute/soustrait des années à la date spécifiée
w - Ajoute/soustrait des semaines à la date spécifiée
h - Ajoute/soustrait des heures à la date spécifiée
n - Ajoute/soustrait des minutes à la date spécifiée
s - Ajoute/soustrait des secondes à la date spécifiée
$iNumber Nombre d'intervalles qui doit être ajoutés/soustraits (utilisez le moins unaire pour la soustraction)
$sDate Date initiale au format AAAA/MM/JJ[ HH:MM:SS]

Valeur de retour

Succès: Retourne la date calculée.
Échec: Retourne 0 et définit @error <> 0.
@error: 1 - $sType non valide
2 - $iNumber non valide
3 - $sDate non valide

Remarques

La date initiale valide doit être comprise entre "2000/01/01 00:00:00" et "3000/12/31 23:59:59".

La fonction ne retournera pas une date invalide. Par exemple, si 3 mois sont ajoutés à "2004/1/31" alors le résultat sera "2004/04/30".

Voir _DateTimeSplit() pour d'autres variations possibles du format de la date d'entrée.

En relation

_DateDiff, _DateTimeSplit, _DateToDayOfWeek, _DateToDayOfWeekISO, _DateToDayValue, _DayValueToDate

Exemple

#include <Date.au3>
#include <MsgBoxConstants.au3>

; Ajoute 5 jours à aujourd'hui
Local $sNewDate = _DateAdd('d', 5, _NowCalcDate())
MsgBox($MB_SYSTEMMODAL, "", "Aujourd'hui + 5 jours :" & $sNewDate)

; Soustrait 2 semaines à partir d'aujourd'hui
$sNewDate = _DateAdd('w', -2, _NowCalcDate())
MsgBox($MB_SYSTEMMODAL, "", "Aujourd'hui moins 2 semaines : " & $sNewDate)

; Ajoute 15 minutes à l'heure actuelle
$sNewDate = _DateAdd('n', 15, _NowCalc())
MsgBox($MB_SYSTEMMODAL, "", "Heure actuelle + 15 minutes : " & $sNewDate)

; Date calculée d'un journal d'évènements qui retourne les secondes depuis 1970/01/01 00:00:00
$sNewDate = _DateAdd('s', 1087497645, "1970/01/01 00:00:00")
MsgBox($MB_SYSTEMMODAL, "", "Date : " & $sNewDate)