Fonction d'attente VBA
Similaire à la fonction de veille La fonction d'attente dans VBA crée un code pour attendre ou faire une pause de quelques secondes. Comment ces fonctions sont utilisées, nous devons faire en sorte qu'un code spécifique soit en pause ou maintenu pour permettre à un autre programme de fonctionner d'abord, puis de reprendre l'autre programme. Elle est également appelée méthode Application.Wait dans VBA.
Comme son nom l'indique, la fonction d'attente VBA dans VBA est utilisée pour maintenir un programme à une heure spécifique afin que d'autres codes puissent fonctionner pendant cette période. Les applications d'arrière-plan continuent de fonctionner et seul le module actuel attend.
Syntaxe de la fonction d'attente dans Excel VBA
La syntaxe pour utiliser la fonction Application.Wait dans VBA est la suivante:
Cette fonction renvoie une valeur booléenne.
Donc, si nous avons besoin d'un code pour attendre jusqu'à 14h00 aujourd'hui, la syntaxe du code sera la suivante:
Application.Wait ("14:00:00")
Le code ci-dessus fera s'arrêter le code jusqu'à 14h00 et le code ne reprendra qu'après 14h00. Ce n'est pas optimal pour faire attendre un code à 14 heures, en général, nous voulons attendre un certain code pendant 10 secondes supplémentaires, puis exécuter. Si je dois faire du code pour attendre 10 secondes, le code sera le suivant:
Application.Wait (Now + TimeValue ("0:00:10"))
Maintenant, c'est la fonction qui prendra l'heure actuelle et nous ajoutons 10 secondes à l'heure actuelle grâce à la fonction de valeur de temps afin que le code puisse attendre ou faire une pause de 10 secondes.
Remarque: Pour utiliser VBA, nous devons activer l'onglet développeur à partir de l'onglet Fichiers dans la section des options.Comment utiliser la fonction d'attente Excel VBA?
Nous allons apprendre à utiliser une fonction VBA Wait Excel avec quelques exemples.
Vous pouvez télécharger ce modèle Excel d'attente VBA ici - Modèle Excel d'attente VBAFonction d'attente VBA - Exemple # 1
Actuellement, il est 15 h 50 sur mon ordinateur portable et je souhaite que le code reprenne à 16 h 00. Nous utiliserons un simple ajout à certaines variables mais afficherons le résultat après 16h00. Nous voulons que le code attende cette période.
Étape 1: accédez à l'onglet Développeur et cliquez sur Visual Basic pour ouvrir l'éditeur VB.
Étape 2: Cliquez sur Insérer un onglet, puis cliquez sur Module .
Étape 3: Une fois la fenêtre de code ouverte, déclarez une sous-fonction pour commencer à écrire le code.
Code:
Sous-échantillon () End Sub
Étape 4: Déclarez trois variables AB et C comme un entier.
Code:
Sub Sample () Dim A, B, C As Integer End Sub
Étape 5: Attribuez des valeurs aléatoires aux variables A et B.
Code:
Sous-échantillon () Dim A, B, C En entier A = 10 B = 15 End Sub
Étape 6: utilisez une fonction application.wait pour faire attendre la fonction jusqu'à 16h00.
Code:
Sous-échantillon () Dim A, B, C En entier A = 10 B = 15 Application.Wait ("16:00:00") End Sub
Étape 7: utilisez l'ajout de A et B et stockez la sortie dans C.
Code:
Sous-échantillon () Dim A, B, C En entier A = 10 B = 15 Application.Wait ("16:00:00") C = A + B End Sub
Étape 8: utilisez une fonction Msgbox pour afficher la valeur de C.
Code:
Sous-échantillon () Dim A, B, C En entier A = 10 B = 15 Application.Wait ("16:00:00") C = A + B MsgBox C End Sub
Étape 9: exécutez le code ci-dessus. Une fois que nous avons exécuté le code, nous voyons que le code n'affiche pas de message avant 16h00, mais après 16h00, j'obtiens la sortie suivante.
J'ai dû attendre jusqu'à 16h00 pour voir ce résultat. Le code de la fonction Msgbox a dû attendre réellement.
Fonction d'attente VBA - Exemple # 2
Voyons le code avec des messages personnalisés que le code attendra 10 secondes et après 10 secondes, il affichera que le temps d'attente a expiré et affiche le résultat final.
Étape 1: accédez à l'onglet Développeur et cliquez sur Visual Basic pour ouvrir l'éditeur VB.
Étape 2: Déclarez une sous-fonction pour commencer à écrire le code.
Code:
Sub Sample1 () End Sub
Étape 3: Déclarez trois variables AB et C comme un entier.
Code:
Sub Sample1 () Dim A, B, C As Integer End Sub
Étape 4: attribuez des valeurs aléatoires aux variables A et B.
Code:
Sous-échantillon1 () Dim A, B, C En entier A = 2 B = 10 End Sub
Étape 5: utilisez une fonction Msgbox pour afficher que le temps d'attente est sur le point de commencer.
Code:
Sub Sample1 () Dim A, B, C As Integer A = 2 B = 10 MsgBox "The Wait Time Is Started" End Sub
Étape 6: Utilisez la fonction Wait pour attendre le code pendant 10 secondes.
Code:
Sub Sample1 () Dim A, B, C As Integer A = 2 B = 10 MsgBox "The Wait Time Is Started" Application.Wait (Now + TimeValue ("0:00:10")) End Sub
Étape 7: dans la variable C, elle stocke la valeur de B / A et affiche un message personnalisé indiquant que la période d'attente est terminée, puis affiche la valeur de C.
Code:
Sub Sample1 () Dim A, B, C As Integer A = 2 B = 10 MsgBox "The Wait Time Is Started" Application.Wait (Now + TimeValue ("0:00:10")) C = B / A MsgBox " Le temps d'attente est terminé "MsgBox C End Sub
Étape 8: Nous exécutons le code et voyons le premier message comme suit.
Étape 9: Appuyez sur OK pour voir le résultat suivant après 10 secondes.
Étape 10: Lorsque nous appuyons sur OK, nous obtenons le résultat final.
Dans l'exemple ci-dessus, nous avons fait en sorte que le code attende 10 secondes, puis affiche le résultat de la valeur de C.
Fonction d'attente VBA - Exemple # 3
Renommons maintenant les feuilles de calcul feuille 1 et feuille 2 en Anand et Aran respectivement, mais nous voulons un intervalle de 5 secondes entre les deux feuilles étant renommées.
Étape 1: accédez à l'onglet Développeur et cliquez sur Visual Basic pour ouvrir l'éditeur VB.
Étape 2: Déclarez une sous-fonction pour commencer à écrire le code.
Code:
Sub Sample2 () End Sub
Étape 3: activez la première feuille de calcul.
Code:
Sub Sample2 () Worksheets ("Sheet1"). Activer End Sub
Étape 4: renommez la première feuille de calcul en Anand.
Code:
Sub Sample2 () Worksheets ("Sheet1"). Activate Worksheets ("Sheet1"). Name = "Anand" End Sub
Étape 5: affichez un message indiquant que la feuille 1 a été renommée et que le code se met en pause pendant cinq secondes.
Code:
Sub Sample2 () Worksheets ("Sheet1"). Activate Worksheets ("Sheet1"). Name = "Anand" MsgBox "Sheet 1 renommé maintenant le code s'arrêtera pendant 5 secondes" End Sub
Étape 6: Utilisez la fonction Wait pour faire attendre le code pendant cinq secondes.
Code:
Sub Sample2 () Worksheets ("Sheet1"). Activer Worksheets ("Sheet1"). Name = "Anand" MsgBox "Sheet 1 renommé maintenant le code s'arrêtera pendant 5 secondes" Application.Wait (Now + TimeValue ("0:00: 05 ")) End Sub
Étape 7: Renommez maintenant la deuxième feuille 2 en Aran.
Code:
Sub Sample2 () Worksheets ("Sheet1"). Activer Worksheets ("Sheet1"). Name = "Anand" MsgBox "Sheet 1 renommé maintenant le code s'arrêtera pendant 5 secondes" Application.Wait (Now + TimeValue ("0:00: 05 ")) Feuilles de calcul (" Sheet2 "). Activer les feuilles de calcul (" Sheet2 "). Name =" Aran "End Sub
Étape 9: Affichez un message indiquant que la feuille 2 a été renommée et que l'attente a été passée.
Code:
Sub Sample2 () Worksheets ("Sheet1"). Activer Worksheets ("Sheet1"). Name = "Anand" MsgBox "Sheet 1 renommé maintenant le code s'arrêtera pendant 5 secondes" Application.Wait (Now + TimeValue ("0:00: 05 ")) Feuilles de calcul (" Sheet2 "). Activez Feuilles de calcul (" Sheet2 "). Name =" Aran "MsgBox" Le temps d'attente est terminé et la feuille 2 est également renommée "End Sub
Étape 10: Maintenant, exécutez le code pour voir le résultat.
Nous pouvons voir que la feuille 1 a été renommée Anand et nous obtenons le message d'attendre cinq secondes. Cliquez sur OK et attendez cinq secondes pour le deuxième message.
À partir des exemples ci-dessus, il est clair sur la façon d'utiliser la fonction d'attente dans VBA.
Choses dont il faut se rappeler
Il y a quelques points dont nous devons nous rappeler à propos de la fonction d'attente VBA d'Excel:
- Elle est similaire à la fonction Sleep.
- La fonction d'attente est intégrée dans VBA contrairement à la fonction de veille qui est une fonction Windows.
- La fonction Wait prend Time comme argument.
Articles recommandés
Cela a été un guide pour la fonction d'attente VBA. Ici, nous avons discuté de la façon d'utiliser la fonction d'attente Excel VBA avec des exemples pratiques et un modèle Excel téléchargeable. Vous pouvez également consulter nos autres articles suggérés -
- Comment utiliser VBA TIMER?
- Soustraire le temps dans Excel
- Guide pour Excel VBA Time
- Fonction NOW Excel