Funkcja oczekiwania VBA - Jak korzystać z funkcji Excel VBA Wait?

Spisie treści:

Anonim

Funkcja oczekiwania VBA

Podobne do funkcji snu Funkcja czekania w VBA powoduje, że kod czeka lub zatrzymuje się na kilka sekund. W jaki sposób wykorzystywane są takie funkcje, musimy wprowadzić jakiś konkretny kod, aby wstrzymać lub przytrzymać, aby jakiś inny program działał najpierw, a następnie wznowił działanie innego programu. Jest również nazywany metodą Application.Wait w VBA.

Jak sama nazwa wskazuje, funkcja VBA Funkcja czekania w VBA służy do utrzymywania programu na określony czas, aby w tym czasie mógł działać inny kod. Aplikacje w tle działają nadal i tylko bieżący moduł czeka.

Składnia funkcji oczekiwania w programie Excel VBA

Składnia do użycia funkcji Application.Wait w VBA jest następująca:

Ta funkcja zwraca wartość logiczną.

Jeśli więc potrzebujemy kodu, aby poczekać do 14:00, jego składnia będzie następująca:

Application.Wait („14:00:00”)

Powyższy kod spowoduje zatrzymanie kodu do godziny 14:00, a kod zostanie wznowiony dopiero po godzinie 14:00. Nie jest to optymalne, aby kod czekał na 2 po południu, generalnie chcemy poczekać na określony kod przez kolejne 10 sekund, a następnie uruchomić. Jeśli muszę wprowadzić kod, aby czekać 10 sekund, kod będzie wyglądał następująco:

Application.Wait (Now + TimeValue („0:00:10”))

Teraz jest funkcja, która zajmie bieżący czas i dodajemy 10 sekund do bieżącej funkcji czasu poprzez funkcję wartości czasu, aby kod mógł czekać lub wstrzymać się na 10 sekund.

Uwaga: Aby korzystać z VBA, musimy mieć włączoną kartę programisty z zakładki Pliki w sekcji opcji.

Jak korzystać z funkcji Excel VBA Wait?

Nauczymy się korzystać z funkcji Excela VBA Czekaj z kilkoma przykładami.

Możesz pobrać ten szablon VBA Wait Excel tutaj - VBA Wait Excel Template

Funkcja VBA Wait - przykład nr 1

Obecnie czas na moim laptopie to 15:50 i chcę, aby kod wznowił się o 16:00. Użyjemy prostego dodatku do niektórych zmiennych, ale wyświetlimy wynik po 16:00. Chcemy, aby kod czekał na ten okres.

Krok 1: Przejdź do karty Deweloper i kliknij Visual Basic, aby otworzyć Edytor VB.

Krok 2: Kliknij kartę Wstaw, a następnie kliknij Moduł .

Krok 3: Po otwarciu okna kodu zadeklaruj podfunkcję, aby rozpocząć pisanie kodu.

Kod:

 Sub Sample () End Sub 

Krok 4: Zadeklaruj trzy zmienne AB i C jako liczbę całkowitą.

Kod:

 Sub Sample () Dim A, B, C As Integer End Sub 

Krok 5: Przypisz losowe wartości do zmiennej A i B.

Kod:

 Sub Sample () Dim A, B, C As Integer A = 10 B = 15 End Sub 

Krok 6: Użyj funkcji application.wait, aby funkcja czekała do 16:00.

Kod:

 Próbka dodatkowa () Dim A, B, C Jako liczba całkowita A = 10 B = 15 Aplikacja Poczekaj („16:00:00”) Koniec Sub 

Krok 7: Użyj dodatku A i B i zapisz dane wyjściowe w C.

Kod:

 Próbka dodatkowa () Dim A, B, C Jako liczba całkowita A = 10 B = 15 Zastosowanie Poczekaj („16:00:00”) C = A + B Koniec Sub 

Krok 8: Użyj funkcji Msgbox, aby wyświetlić wartość C.

Kod:

 Próbka dodatkowa () Dim A, B, C Jako liczba całkowita A = 10 B = 15 Zastosowanie Poczekaj („16:00:00”) C = A + B MsgBox C Koniec Sub 

Krok 9: Uruchom powyższy kod. Po uruchomieniu kodu widzimy, że kod nie wyświetla komunikatu aż do 16:00, ale po 16:00 otrzymuję następujący wynik.

Musiałem czekać do 16:00, aby zobaczyć ten wynik. Kod funkcji Msgbox musiał faktycznie czekać.

Funkcja VBA Wait - przykład # 2

Zobaczmy kod z niektórymi spersonalizowanymi wiadomościami, że kod będzie czekać 10 sekund, a po 10 sekundach wyświetli się, że upłynął czas oczekiwania i wyświetli ostateczny wynik.

Krok 1: Przejdź do karty Deweloper i kliknij Visual Basic, aby otworzyć Edytor VB.

Krok 2: Zadeklaruj podfunkcję, aby rozpocząć pisanie kodu.

Kod:

 Sub Sample1 () End Sub 

Krok 3: Zadeklaruj trzy zmienne AB i C jako liczbę całkowitą.

Kod:

 Sub Sample1 () Dim A, B, C As Integer End Sub 

Krok 4: Przypisz losowe wartości do zmiennych A i B.

Kod:

 Sub Sample 1 () Dim A, B, C As Integer A = 2 B = 10 End Sub 

Krok 5: Użyj funkcji Msgbox, aby wyświetlić, że wkrótce zacznie się czas oczekiwania.

Kod:

 Sub Próbka 1 () Dim A, B, C Jako liczba całkowita A = 2 B = 10 MsgBox „Rozpoczęto czas oczekiwania” Zakończ Sub 

Krok 6: Użyj funkcji Czekaj, aby czekać na kod przez 10 sekund.

Kod:

 Sub Próbka 1 () Dim A, B, C Jako liczba całkowita A = 2 B = 10 MsgBox Aplikacja „Czas oczekiwania jest uruchamiany” Poczekaj (Teraz + Wartość_wartości („0:00:10”)) Koniec Sub 

Krok 7: W zmiennej C przechowuje wartość B / A i wyświetla spersonalizowany komunikat, że upłynął okres oczekiwania, a następnie wyświetla wartość C.

Kod:

 Podpróbka 1 () Dim A, B, C Jako liczba całkowita A = 2 B = 10 MsgBox Aplikacja „Czas oczekiwania został rozpoczęty” Poczekaj (Teraz + Wartość_wartości („0:00:10”)) C = B / A MsgBox ” Czas oczekiwania się skończył ”MsgBox C End Sub 

Krok 8: Uruchamiamy kod i widzimy pierwszą wiadomość w następujący sposób.

Krok 9: Naciśnij OK, aby zobaczyć następny wynik po upływie 10 sekund.

Krok 10: Kiedy naciśniemy ok, otrzymamy końcowy wynik.

W powyższym przykładzie sprawiliśmy, że kod czekał przez 10 sekund, a następnie wyświetlał wynik wartości C.

Funkcja VBA Wait - przykład nr 3

Teraz zmieńmy nazwy arkuszy 1 i 2 arkusza roboczego odpowiednio na Anand i Aran, ale chcemy, aby zmiana nazwy obu arkuszy trwała 5 sekund.

Krok 1: Przejdź do karty Deweloper i kliknij Visual Basic, aby otworzyć Edytor VB.

Krok 2: Zadeklaruj podfunkcję, aby rozpocząć pisanie kodu.

Kod:

 Sub Sample2 () End Sub 

Krok 3: Aktywuj pierwszy arkusz.

Kod:

 Sub Sample2 () Arkusze robocze („Arkusz 1”). Aktywuj End Sub 

Krok 4: Zmień nazwę pierwszego arkusza na Anand.

Kod:

 Sub Próbki 2 () Arkusze („Arkusz 1”). Aktywuj arkusze („Arkusz 1”). Nazwa = „Anand” Koniec Sub 

Krok 5: Wyświetl komunikat, że nazwa arkusza 1 została zmieniona, a kod zostanie wstrzymany na pięć sekund.

Kod:

 Sub Próbki 2 () Arkusze robocze („Arkusz 1”). Aktywuj arkusze robocze („Arkusz 1”). Nazwa = „Anand” MsgBox ”Arkusz 1 o zmienionej nazwie teraz kod zatrzyma się na 5 sekund” Koniec Sub 

Krok 6: Użyj funkcji Czekaj, aby kod czekał przez pięć sekund.

Kod:

 Sub Sample2 () Arkusze robocze („Arkusz1”). Aktywuj arkusze robocze („Arkusz1”). Nazwa = „Anand” MsgBox ”Arkusz 1 o zmienionej nazwie teraz kod zostanie wstrzymany na 5 sekund” Application.Wait (Now + TimeValue („0:00: 05 ")) End Sub 

Krok 7: Teraz zmień nazwę drugiego arkusza 2 na Aran.

Kod:

 Sub Sample2 () Arkusze robocze („Arkusz1”). Aktywuj arkusze robocze („Arkusz1”). Nazwa = „Anand” MsgBox ”Arkusz 1 o zmienionej nazwie teraz kod zostanie wstrzymany na 5 sekund” Application.Wait (Now + TimeValue („0:00: 05 ”)) Arkusze robocze („ Arkusz2 ”). Aktywuj arkusze robocze („ Arkusz2 ”). Nazwa =„ Aran ”End Sub 

Krok 9: Wyświetl komunikat, że nazwa arkusza 2 została zmieniona, a oczekiwanie zostało zakończone.

Kod:

 Sub Sample2 () Arkusze robocze („Arkusz 1”). Aktywuj arkusze robocze („Arkusz 1”). Nazwa = „Anand” MsgBox ”Arkusz 1 o zmienionej nazwie teraz kod zostanie wstrzymany na 5 sekund” Application.Wait (Now + TimeValue („0:00: 05 ”)) Arkusze robocze („ Arkusz2 ”). Aktywuj arkusze robocze („ Arkusz2 ”). Nazwa =„ Aran ”MsgBox” Czas oczekiwania się skończył, a nazwa arkusza 2 została również przemianowana na „End Sub 

Krok 10: Teraz uruchom kod, aby zobaczyć wynik.

Widzimy, że nazwa arkusza 1 została zmieniona na Anand i otrzymujemy wiadomość, aby czekać pięć sekund. Kliknij OK i poczekaj pięć sekund na drugą wiadomość.

Z powyższych przykładów jasno wynika, jak używać funkcji oczekiwania w VBA.

Rzeczy do zapamiętania

Jest kilka rzeczy, które musimy pamiętać o funkcji oczekiwania VBA programu Excel:

  • Jest podobny do funkcji uśpienia.
  • Funkcja oczekiwania jest wbudowana w VBA w przeciwieństwie do funkcji uśpienia, która jest funkcją systemu Windows.
  • Funkcja czekania traktuje Czas jako argument.

Polecane artykuły

Jest to przewodnik po VBA Wait Function. Tutaj omówiliśmy, jak korzystać z funkcji Excel VBA Wait Function wraz z praktycznymi przykładami i szablonem Excela do pobrania. Możesz także przejrzeć nasze inne sugerowane artykuły -

  1. Jak korzystać z VBA TIMER?
  2. Odejmij czas w programie Excel
  3. Przewodnik po Excel VBA Time
  4. TERAZ funkcja Excel