Excel VBA Time
La fonction VBA TIME renvoie l'heure actuelle en sortie et peut également être utilisée comme entrée pour différentes lignes de code macro. Cette fonction n'a pas de paramètre pour elle et a donc de loin la syntaxe la plus simple en tant que mot TIME avec des parenthèses vides qui peut être vue comme ci-dessous:
La syntaxe de la fonction VBA TIME:
Temps()
En fait, il n'y a pas non plus besoin de parenthèses, vous pouvez simplement utiliser le mot TIME lui-même dans votre bloc de code qui permet à votre système de renvoyer l'heure actuelle. Nous avons également une fonction similaire appelée NOW () sous Excel VBA qui renvoie l'heure actuelle avec la date. Cependant, dans cet article, notre objectif principal serait d'utiliser la fonction TIME et d'examiner différents exemples de travail de la même chose.
Comment utiliser la fonction de temps Excel VBA?
Nous allons apprendre à utiliser une fonction VBA Time avec quelques exemples dans Excel.
Vous pouvez télécharger ce modèle Excel Time VBA ici - Modèle Excel Time VBAFonction de temps VBA - Exemple # 1
Heure actuelle du système à l'aide de la fonction TIME:
Suivez les étapes ci-dessous pour afficher l'heure actuelle de votre système.
Étape 1: définir une sous-procédure.
Code:
Sub TimeExample1 () End Sub
Étape 2: Définissez une variable qui sera utile pour conserver la valeur du temps pour vous. Définissez-le en tant que chaîne.
Code:
Sub TimeExample1 () Dim CurrentTime As String End Sub
Remarque: La raison derrière la définition de cette variable en tant que chaîne est que la sortie de la fonction TIME est dans une chaîne.
Étape 3: Utilisez la fonction VBA TIME pour attribuer l'heure actuelle à la variable définie à l'étape ci-dessus à l'aide d'un opérateur d'affectation.
Code:
Sub TimeExample1 () Dim CurrentTime As String CurrentTime = Time End Sub
Étape 4: Comme je l'ai mentionné précédemment, il n'est pas nécessaire d'ajouter des parenthèses après la fonction TIME car il s'agit d'une fonction volatile. Cela dit, le code suivant donnera la sortie équivalente en comparaison avec le code ci-dessus.
Code:
Sub TimeExample1 () Dim CurrentTime As String CurrentTime = Time () End Sub
Étape 5: Maintenant, utilisez une fonction MsgBox pour afficher l'heure actuelle à l'aide de la boîte de message d'affichage.
Code:
Sub TimeExample1 () Dim CurrentTime As String CurrentTime = Time () MsgBox CurrentTime End Sub
Étape 6: exécutez ce code en appuyant sur F5 ou sur le bouton Exécuter et voyez la sortie. Vous devriez obtenir la sortie comme indiqué dans l'image ci-dessous.
Veuillez noter que l'heure reflétée dans l'image ci-dessus est l'heure à laquelle ce code est exécuté sur le système. Pendant que vous l'essayez par vous-même, votre sortie peut varier en fonction de l'heure à laquelle vous travaillez sur ce code.
Fonction de temps VBA - Exemple # 2
VBA TIME en combinaison avec une fonction Date pour renvoyer l'heure actuelle avec la date du jour:
Comme il a été informé plus tôt dans l'introduction de cet article, il existe une fonction appelée NOW () qui vous donne la date actuelle ainsi que l'heure dans Microsoft Excel. Voir la capture d'écran ci-dessous.
Cependant, dans VBA, cette fonction ne fonctionne pas. Par conséquent, dans VBA, nous devons utiliser une combinaison de fonctions VBA Date et VBA TIME pour obtenir la date et l'heure actuelles. VBA Date donnera une date actuelle et VBA Time donnera l'heure actuelle (que nous avons déjà vu dans le 1 er exemple).
Voyons étape par étape comment nous pouvons y parvenir.
Étape 1: insérez un nouveau module dans votre script Excel VBA.
Étape 2: définir une nouvelle sous-procédure en donnant un nom à la macro.
Code:
Sub Example2 () End Sub
Étape 3: Nous voulions que notre sortie soit stockée dans la cellule A1 de notre feuille Excel. Pour cela, commencez à écrire le code comme ci-dessous.
Code:
Sub Example2 () Plage ("A1"). Value = End Sub
Étape 4: Maintenant, utilisez une combinaison de fonctions VBA DATE et VBA TIME comme indiqué ci-dessous et affectez sa valeur à la cellule A1.
Code:
Sub Example2 () Plage ("A1"). Value = Date & "" & Time End Sub
La fonction DATE renverra la date actuelle du système et la fonction TIME renverra l'heure actuelle. L'espace blanc entouré de guillemets doubles ("") permet d'avoir un espace entre la date et l'heure dans la sortie finale. Deux opérateurs & (et) fonctionnent comme des opérateurs de concaténation qui concaténent DATE et TIME avec de l'espace.
Étape 5: exécutez le code en appuyant sur F5 ou sur le bouton Exécuter manuellement. Vous verrez la sortie dans la cellule A1 de votre feuille de calcul comme un coup:
Ici, encore une fois, veuillez noter que l'heure reflétée dans la cellule A1 est la date et l'heure auxquelles ce code est exécuté par moi-même. Par conséquent, lorsque vous exécuterez ce code, les sorties seront différentes.
Nous pouvons également formater les valeurs de date et d'heure à l'aide de la fonction NumberFormat sous VBA.
Étape 6: Écrivez le code mentionné ci-dessous dans votre script VBA.
Code:
Sous Exemple2 () Plage ("A1"). Valeur = Date & "" & Plage horaire ("A1"). NumberFormat = "jj-mmm-aaaa hh: mm: ss AM / PM" Fin Sous
Étape 7: Appuyez sur F5 ou sur le bouton Exécuter manuellement et vous verrez la sortie comme ci-dessous dans la cellule A1 de votre feuille de calcul.
Fonction de temps VBA - Exemple # 3
Fonction VBA TIME pour suivre l'heure et la date d'ouverture d'un classeur:
Parfois, il y a une feuille de calcul que nous ouvrons fréquemment (comme la liste des employés d'une organisation) et y apportons des modifications. Nous pourrions être intéressés de connaître la date et l'heure auxquelles les modifications ont été apportées dans la feuille de calcul. La fonction Heure VBA peut être utilisée pour suivre la date et l'heure à chaque ouverture d'un classeur. Voir les étapes ci-dessous pour travailler sur le même.
Étape 1: créez une nouvelle feuille de calcul dans votre classeur Excel et renommez-la selon votre convenance. Je vais le renommer en (Time_Track).
Étape 2: Double-cliquez sur ThisWorkbook sous VBE (Visual Basics Editor).
Étape 3: Dans la liste déroulante des objets, sélectionnez Classeur au lieu de Général.
Étape 4: Vous verrez qu'une nouvelle sous-procédure privée sera définie sous le nom Workbook_Open () dans VBE.
Code:
Sous-classeur privé_Open () End Sub
Étape 5: Notez le code mentionné ci-dessous dans cette sous-procédure de macro, comme indiqué dans l'image ci-dessous:
Code:
Private Sub Workbook_Open () Dim LB As Long LB = Sheets ("Time_Track"). Cells (Rows.Count, 1) .End (xlUp) .Row + 1 Sheets ("Time_Track"). Cells (LB, 1) .Value = Date & "" & Heure () End Sub
Ici, une variable LB de type Long est définie pour trouver la cellule avant-dernière cellule utilisée où la sortie peut être stockée. Ensuite, en utilisant une combinaison de fonctions VBA DATE et TIME, nous avons attribué une valeur sous cette cellule.
Étape 6: exécutez le code en appuyant manuellement sur F5 ou sur le bouton Exécuter et voyez la sortie dans la colonne A d'une feuille de calcul.
Ce code stockera la valeur de la date et de l'heure à chaque fois que vous ouvrez la feuille de calcul Time_Track.
C'est de cet article. Terminons les choses en écrivant certaines choses à retenir.
Choses dont il faut se rappeler
- La fonction VBA TIME stocke la sortie sous forme de chaîne dans Excel. Cependant, nous pouvons également le stocker au format Date tout en définissant une variable comme Date au lieu d'une chaîne.
- La fonction TIME ne nécessite aucun argument. C'est une fonction volatile.
- Même elle n'a pas besoin de parenthèses pour appeler la fonction. Seul TIME est suffisant pour obtenir l'heure actuelle.
- La fonction TIME par défaut enregistre la valeur de l'heure au format hh: mm: ss (format d'horloge 24 heures). Cependant, parfois le format de sortie dépend également du format de l'heure de votre système.
Articles recommandés
Cela a été un guide pour la fonction de temps VBA. Ici, nous avons discuté de la façon d'utiliser les fonctions de temps VBA Excel et nous avons également appris la combinaison de la date et de l'heure comme alternative à la fonction Now () et suit les enregistrements ouverts du classeur avec quelques exemples pratiques et un modèle Excel téléchargeable. Vous pouvez également consulter nos autres articles suggérés -
- Comment créer Excel MsgBox VBA?
- WORKDAY Fonction Excel | Formule
- Guide de boucle VBA Do While
- Insérer une date dans Excel