Qu'est-ce que VBA DateSerial?

La fonction VBA DATESERIAL est une fonction intégrée dans Excel. La fonction DATESERIAL renvoie une date avec une valeur pour l'année, le mois et le jour. Disons par exemple si la date d'aujourd'hui est le 18 juillet 2019. Certains utilisateurs peuvent l'écrire comme 18-Jul'19 ou 18-Jul-19. Les formats des dates peuvent être différents pour plusieurs utilisateurs. Cela nous donne la tâche fastidieuse de travailler avec un plus grand nombre de dates dans différents formats.

Comme l'énoncé du problème défini ci-dessus, le format des dates peut être différent pour plusieurs utilisateurs. C'est là que la fonction série de date vient dans VBA pour vous aider. C'est une très bonne fonction de faire notre propre date avec les valeurs que nous choisissons de définir. Faites-nous part de cette fonction en détail. La fonction DateSerial dans VBA est une fonction de date et d'heure, la valeur renvoyée pour cette fonction est donc DATE. La méthode d'utilisation de la syntaxe pour cette fonction sera la suivante.

Syntaxe de VBA DateSerial

La syntaxe de la fonction VBA DateSerial dans Excel est la suivante:

Il faut trois arguments année, mois et jour.

  • Année: La plage acceptée pour cette partie de l'argument dans la fonction est comprise entre 100 et 9999. Le type de données de l'argument doit être un entier.
  • Mois: La plage acceptée pour cette partie de l'argument dans la fonction est comprise entre 1 et 12. Le type de données de l'argument doit être un entier.
  • Jour: La plage acceptée pour cette partie de l'argument dans la fonction est comprise entre 1 et 31. Le type de données de l'argument doit être un entier.

Mais voici une partie intéressante de cette fonction. Si nous fournissons l'argument au-dessus de la plage acceptée, la fonction ne renvoie pas d'erreur à la place, elle calcule la partie suivante de la plage et affiche la date. Par exemple, si je donne une entrée en tant que date de série (2019, 14, 02), nous savons maintenant qu'il ne peut y avoir que 12 mois dans une année, mais j'ai fourni 14 comme argument. La fonction ne renverra pas d'erreur à la place, elle ajoutera les deux mois supplémentaires de l'année en cours, la sortie sera donc le 2020-02-02.

Comment utiliser la fonction VBA DateSerial dans Excel?

Nous allons apprendre à utiliser une fonction VBA DateSerial avec quelques exemples dans Excel.

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

Testons cette fonction à l'aide de quelques exemples qui rendront les choses beaucoup plus claires pour nous.

Exemple # 1 - VBA DateSerial

Fournissons d'abord une date simple à une variable en utilisant la fonction série date et voyons la sortie que nous obtenons.

Étape 1: Avant de commencer avec nos exemples, assurez-vous d'abord que l'onglet développeur est activé, puis passez à la section de code pour ouvrir l'éditeur VB en cliquant sur Visual Basic, comme indiqué dans l'image ci-dessous.

Étape 2: Dans la fenêtre ci-dessus, cliquez sur l'onglet Insertion pour insérer un module. Nous travaillerons dans le même module pour tous nos exemples.

Étape 3: lancez une sous-procédure comme suit et déclarez une variable comme type de données de date.

Code:

 Sub Sample () Dim Dt As Date End Sub 

Étape 4: Fournissons maintenant une date à la variable à l'aide de la fonction série de date.

Code:

 Sous-échantillon () Dim Dt As Date Dt = DateSerial (2019, 7, 2) End Sub 

Étape 5: Affichez la valeur stockée dans notre variable à l'aide de la fonction msgbox.

Code:

 Sous-échantillon () Dim Dt As Date Dt = DateSerial (2019, 7, 2) MsgBox Dt End Sub 

Étape 6: Lorsque nous exécutons le code ci-dessus, nous obtenons le résultat suivant.

Exemple # 2 - VBA DateSerial

Maintenant, testons la théorie que nous avons discutée ci-dessus dans l'introduction que si nous fournissons les valeurs en dehors de la plage acceptée et la fonction calcule la date pour nous.

Étape 1: Dans le même module, démarrez une autre sous-procédure comme suit.

Code:

 Sub Sample1 () End Sub 

Étape 2: Définissez maintenant une variable avec le type de données de date.

Code:

 Sub Sample1 () Dim Dt As Sub Date End Sub 

Étape 3: Fournissons l'entrée à la variable DT à l'aide de la fonction série de date comme indiqué ci-dessous.

Code:

 Sub Sample1 () Dim Dt As Date Dt = DateSerial (2019, 14, 2) End Sub 

Étape 4: Affichez la valeur stockée dans la variable Dt à l'aide de la fonction msgbox.

Code:

 Sub Sample1 () Dim Dt As Date Dt = DateSerial (2019, 14, 2) MsgBox Dt End Sub 

Étape 5: Maintenant, exécutez le code ci-dessus et voyez le résultat ci-dessous comme suit.

Nous pouvons voir que l'année a changé car nous avions prévu deux mois supplémentaires pour les arguments. Fondamentalement, cette fonction a ajouté 14 mois à l'année 2019, ce qui nous a donné le deuxième mois de 2020 et la 2 e date.

Exemple # 3 - VBA DateSerial

Dans les exemples ci-dessus, nous avons fourni les arguments de manière générale par date. Mais nous avons discuté de la façon dont les utilisateurs peuvent saisir des valeurs absurdes dans la section date sous forme de format, pour écrire des dates est différent d'un individu à l'autre. Nous comparerons deux formats de date en utilisant la fonction série de date dans cet exemple.

Étape 1: dans le même module, définissez une autre sous-procédure comme suit pour le troisième exemple.

Code:

 Sub Sample2 () End Sub 

Étape 2: dans ce scénario, définissez deux variables comme dates, comme indiqué ci-dessous.

Code:

 Sub Sample2 () Dim Dt1, Dt2 As Date End Sub 

Étape 3: Maintenant, dans la première variable, fournissons la date de manière simple et régulière en utilisant la fonction dateserial.

Code:

 Sub Sample2 () Dim Dt1, Dt2 As Date Dt1 = DateSerial (2019, 12, 31) End Sub 

Étape 4: Maintenant, pour la deuxième variable, fournissons la date de manière irrégulière à l'aide de la fonction série périodique comme indiqué ci-dessous.

Code:

 Sub Sample2 () Dim Dt1, Dt2 As Date Dt1 = DateSerial (2019, 12, 31) Dt2 = DateSerial (19, 12, 31) End Sub 

Étape 5: Imprimez maintenant ces deux valeurs à l'aide de la fonction msgbox.

Code:

 Sub Sample2 () Dim Dt1, Dt2 As Date Dt1 = DateSerial (2019, 12, 31) Dt2 = DateSerial (19, 12, 31) MsgBox Dt1 & "" & Dt2 End Sub 

Étape 6: exécutez le code ci-dessus pour trouver le résultat suivant illustré ci-dessous.

Nous pouvons voir que les deux dates sont identiques. L'année 19 à deux chiffres est interprétée comme 2019.

Choses dont il faut se rappeler

  • Il s'agit d'une fonction de date et d'heure donc la sortie est en date.
  • Si la valeur fournie à la fonction est supérieure à la plage acceptée de la fonction, elle calcule automatiquement la date plutôt que de donner une erreur.
  • Si les valeurs fournies aux arguments sont supérieures à la valeur qu'un entier peut contenir, la fonction renvoie une erreur.

Articles recommandés

Ceci est un guide de VBA DateSerial. Ici, nous discutons de l'utilisation de la fonction DateSerial Excel VBA avec des exemples pratiques et un modèle Excel téléchargeable. Vous pouvez également consulter nos autres articles suggérés -

  1. VBA InStr expliqué avec des exemples
  2. Type de données entier VBA
  3. VBA ISNULL expliqué avec des exemples
  4. Format de date VBA (exemples)

Catégorie: