CDATE |
Conversion en date |
|---|---|
| Access 2019, Access 2016, Access 2013, Access 2010, Access 2007, Access 2003, Access XP, Access 2000 | Microsoft Access |
Syntaxe
| CDate(expression) |
Paramètres
| Nom | Description |
|---|---|
| expression | Ce paramètre permet d'indiquer une expression contenant la date |
Description
Cette fonction permet de convertir un type de données quelconque à un format de date.
Remarques
- La fonction convertit une expression en valeur de type Date/Heure : La fonction CDate transforme une expression compatible en une valeur de type Date/Heure reconnue par Microsoft Access. Cette conversion permet ensuite d'utiliser toutes les fonctions de manipulation de dates et d'heures disponibles dans Access. Elle est indispensable lorsqu'une donnée est initialement entreposée sous une autre forme, comme une chaîne de caractères.
- Elle accepte plusieurs formats de dates selon les paramètres régionaux : CDate peut convertir des dates écrites sous différents formats, à condition qu'elles soient reconnues par les paramètres régionaux de Windows. Par exemple, une date valide au format 31/12/2026 sera interprétée correctement sur un système configuré en français. En revanche, une même chaîne peut être interprétée différemment sur un système utilisant le format américain.
- La fonction peut également convertir une date accompagnée d'une heure : L'expression passée à CDate peut contenir uniquement une date, uniquement une heure ou les deux simultanément. Ainsi, une valeur comme 26/06/2026 14:30:00 est convertie en une valeur Date/Heure complète. Cette caractéristique facilite la gestion des rendez-vous, des journaux d'événements ou des historiques de transactions.
- Une expression invalide provoque une erreur d'exécution : Si la chaîne fournie ne représente pas une date valide, Microsoft Access génère une erreur de conversion. C'est notamment le cas pour des valeurs comme 31/02/2026 ou des chaînes contenant du texte sans rapport avec une date. Il est donc conseillé de valider les données avant d'utiliser CDate, par exemple avec la fonction IsDate.
- La fonction est souvent utilisée avec IsDate : Dans les applications Access, il est courant de vérifier qu'une valeur est bien une date avant de tenter sa conversion. L'utilisation de IsDate(expression) suivie de CDate(expression) permet d'éviter les erreurs d'exécution. Cette combinaison est particulièrement utile lorsque les données proviennent d'une saisie utilisateur ou d'un fichier importé.
- Le résultat obtenu est un véritable type Date/Heure : Après la conversion, la valeur n'est plus une simple chaîne de caractères mais un objet Date/Heure exploitable par Access. Il devient alors possible d'effectuer des comparaisons chronologiques, des calculs de durée ou d'utiliser des fonctions comme DateAdd, DateDiff, Year, Month ou Day. Cette conversion améliore la précision des traitements sur les données temporelles.
- La fonction est disponible dans les requêtes, les formulaires et le code VBA : CDate peut être utilisée dans les requêtes SQL, les champs calculés, les formulaires, les états ainsi que dans les modules VBA. Cette polyvalence permet de convertir des dates directement lors de l'affichage ou du traitement des données. Le même comportement est conservé quel que soit le contexte d'utilisation.
- Elle facilite l'importation de données provenant de sources externes : Lorsqu'un fichier CSV, Excel ou texte contient des dates enregistrées sous forme de chaînes de caractères, CDate permet de les convertir rapidement dans le format interne d'Access. Les données peuvent alors être triées, filtrées ou comparées correctement. Cette fonction est donc très utilisée dans les procédures d'importation et de migration de données.
- Elle appartient à la famille des fonctions de conversion de VBA : CDate fait partie des fonctions de conversion telles que CBool, CByte, CCur, CInt, CLng, CSng, CDbl et CStr. Ces fonctions permettent de convertir explicitement une valeur vers un type de données déterminé. Leur utilisation améliore la lisibilité du code et limite les erreurs liées aux conversions implicites.
- La fonction est compatible avec toutes les versions modernes de Microsoft Access : La fonction CDate est présente depuis les premières versions d'Access intégrant VBA et son fonctionnement est demeuré très stable. Elle est compatible avec Access 2000, Access XP, Access 2003, Access 2007, Access 2010, Access 2013, Access 2016 ainsi qu'avec Microsoft 365. Cette compatibilité garantit un comportement uniforme lors de la migration ou de la maintenance d'applications Access.
Exemple de code VBA
La fonction CDate peut être utilisée dans le code VBA de Microsoft Access.
Par exemple :
Dim LstrDate As String
Dim LDate As Date
LstrDate = "Apr 6, 2003"
LDate = CDate(LstrDate)
La fonction « CDate » convertit toute valeur en date, à condition que l'expression soit une date valide.
Dans cet exemple, la variable LDate contiendrait désormais la valeur 4/6/2003.
Dernière mise à jour : Mardi, le 28 juillet 2015