Nous avons déjà passé en revue les variables, les types de données et les constantes dans notre didacticiel Types de données VBA - Variables et constantes. Dans ce tutoriel, nous allons voir comment déclarer une variable en tant que date.
Dans VBA, le type de données de date est stocké sous forme décimale. Les dates et les heures peuvent être stockées dans ce type de données. Le type de données de date VBA peut stocker des valeurs allant du 1er janvier 100 au 31 décembre 9999.
Variable de date VBA
Vous déclarez une variable sous forme de date à l'aide du mot clé Dim :
1 | Dim dateOne comme date |
Ensuite, vous pouvez affecter une date à la variable de date. Il existe plusieurs façons de générer des dates à affecter aux variables :
Affecter aujourd'hui à la variable
La fonction Date renverra la date d'aujourd'hui :
123 | Dim dtAujourd'huidtAujourd'hui = Date |
Affecter maintenant à la variable
La fonction Now renvoie la date et l'heure du jour :
123 | Diminuer maintenantdMaintenant = Maintenant |
Attribuer du temps à la variable
La fonction Time renvoie l'heure actuelle :
123 | Dim tTimetHeure = Heure |
Attribuer une date à une variable avec DateSerial
La fonction DateSerial renverra une date basée sur une année, un mois et un jour d'entrée :
123 | Dim dsDatedsDate = DateSérie(2010, 11, 11) |
Attribuer une heure à une variable avec TimeSerial
La fonction TimeSerial renverra une heure, basée sur une heure, une minute et une seconde d'entrée :
123 | Dim tsTimetsTime = TimeSerial (10, 10, 45) |
Vous devez inclure les dates avec le # ou " lorsque vous les utilisez dans votre code, comme indiqué ci-dessous :
Fonction VBA DateValue
La fonction VBA DateValue peut être utilisée pour initialiser une date. Le code suivant peut être utilisé pour initialiser une date en VBA :
1 | MsgBox DateValue("1/1/2010") |
Fonction TimeValue VBA
1 | MsgBox TimeValue("21:30:57") |
Exemple de variable de date Excel VBA
Cette procédure montre comment créer des variables de date, leur attribuer des valeurs et les exporter dans une feuille de calcul Excel :
12345678910111213 | Sous-déclarerAVariableAsADate()Dim dateOne As DateDim dateDeux comme datedateUn = 01/01/2019#dateDeux = "1/2/2019"Plage("A1").Valeur = dateUnPlage("A2").Valeur = dateDeuxFin du sous-marin |
Le résultat est:
Vous pouvez en savoir plus sur les fonctions de date dans ce didacticiel.
Variable de date VBA dans Access
La variable de date fonctionne exactement de la même manière dans Access VBA que dans Excel VBA.
Cette procédure montre comment créer une variable de date et mettre à jour un champ dans une table d'accès avec la valeur.
12345 | Sous-déclarerAVariableAsADate()Dim dtWork As DatedtWork = #05/10/2020#DoCmd.RunSql "UPDATE tblJobs SET WorkDate = #" & dtWork & "# WHERE JobNo = 6"Fin du sous-marin |