Aktualizacja Excel VBA

Kiedy uruchamiamy dowolne makro VBA z ogromnym zestawem kodu, kod się kończy, ale w tle otrzymujemy przetwarzanie danych w postaci uruchomienia lub oczekiwania na wskaźnik. Po zakończeniu możemy zobaczyć tylko wynik. Zwykły sposób nie jest właściwym sposobem sprawdzania, jak wartości są aktualizowane przez uruchomienie kodu. Załóżmy na przykład, że napisaliśmy kod do generowania niektórych liczb w 100 komórkach. Teraz ten kod może po prostu wygenerować wynik bez pokazywania, w jaki sposób drukowane są liczby. Aby rozwiązać ten problem, mamy VBA ScreenUpdating . ScreenUpdating w VBA pomaga nam zobaczyć, jak kod generuje dane wyjściowe. Mogą to być liczby, tekst, alfabety lub kombinacje. Po uruchomieniu pętli kodu według VBA ScreenUpdating mogliśmy zobaczyć, jak generowane są liczby.

Jak korzystać z aplikacji ScreenUpdating w Excel VBA?

Nauczymy się korzystać z aplikacji ScreenUpdating w programie Excel za pomocą kodu VBA.

Możesz pobrać ten szablon Excel VBA ScreenUpdating tutaj - Szablon Excel VBA ScreenUpdating

VBA ScreenUpdating można zauważyć podczas uruchamiania kodu lub makra. Podczas działania kodu będziemy mogli zobaczyć, jak nasz ekran jest aktualizowany o wartości generowane przez kod napisany w VBA. Zamiast widzieć starszy znak oczekiwania, za pomocą VBA ScreenUpdating możemy zobaczyć, jak ekran aktualizuje wartości wyjściowe za pomocą VBA ScreenUpdating. Dzięki temu możemy również zobaczyć, że nazwa samego artykułu określa jego działanie, VBA ScreenUpdating .

Aktualizacja VBA - Przykład nr 1

W tym przykładzie zobaczymy prosty kod do aktualizacji ekranu. W tym celu potrzebujemy komórek z liczbami, jak pokazano poniżej. W tym celu wykonaj następujące kroki:

Krok 1: Otwórz moduł z karty menu Wstaw, jak pokazano poniżej.

Krok 2: Teraz napisz podprocedurę w nazwie VBA ScreenUpdating, jak pokazano poniżej.

Kod:

 Sub Screen_Update1 () End Sub 

Krok 3: Teraz skopiujemy liczby z komórki A1: A3 do dowolnych innych komórek. Powiedzmy, że komórka to C1: C3 za pomocą poniższego kodu.

Kod:

 Sub Screen_Update1 () Zakres („A1”). Zakres kopiowania („C1”) Zakres („A2”). Zakres kopiowania („C2”) Zakres („A3”). Zakres kopiowania („C3”) End Sub 

Krok 4: Teraz, jeśli uruchomimy ten kod, możemy uzyskać tylko dane wyjściowe, które są skopiowane wartości z kolumny A do C. Teraz będziemy używać aplikacji ScreenUpdating, jak pokazano poniżej.

Kod:

 Sub Screen_Update1 () Application.ScreenUpdating Range („A1”). Range Copy („C1”) Range („A2”). Range Copy („C2”) Range („A3”). Range Copy („C3”) End Pod 

Krok 5: Umieszczamy znak równości, aby wybrać wartości logiczne, które są PRAWDA lub FAŁSZ. Wybierzemy FAŁSZ, aby zatrzymać aktualizację ekranu.

Kod:

 Sub Screen_Update1 () Application.ScreenUpdating = Fałszywy zakres („A1”). Zakres kopiowania („C1”) Zakres („A2”). Zakres kopiowania („C2”) Zakres („A3”). Zakres kopiowania („C3” ) Napis końcowy 

Krok 6: Uruchom kod, naciskając klawisz F5 lub klikając przycisk Play znajdujący się pod wstążką menu. Zobaczymy, że wartości są kopiowane z kolumny A do C.

Widać to wyraźniej, jeśli mamy ogromny zestaw liczb.

Aktualizacja VBA - przykład nr 2

Zobaczmy kolejny przykład ScreenUpdating. Tym razem rozważmy liczbę od 1 do 20 z komórki A1 do A20, jak pokazano poniżej.

Aby użyć aplikacji do aktualizacji ekranu, wykonaj następujące czynności:

Krok 1: Napisz podprocedurę VBA Screenupdating, jak pokazano poniżej.

Kod:

 Sub Screen_Update2 () End Sub 

Krok 2: Teraz napisz kod, aby wybrać komórkę zakresu od A1 do A20 i skopiuj je z B1 do F20, jak pokazano poniżej. W podobny sposób, jak widzieliśmy w przykładzie 1.

Kod:

 Sub Screen_Update2 () Range („A1: A20”). Copy Range („B1: F20”) End Sub 

Krok 3: Aby zastosować aplikację do aktualizacji ekranu, ponownie użyjemy podobnego wiersza kodu, który widzieliśmy w przykładzie 1.

Kod:

 Sub Screen_Update2 () Application.ScreenUpdating = Fałszywy zakres („A1: A20”). Zakres kopiowania („B1: F20”) End Sub 

Powyższa aplikacja ScreenUpdating jako FALSE pozwoli nam zobaczyć, jak kod VBA aktualizuje ekran. Ponieważ mamy więcej liczb, więc istnieje szansa, że ​​zobaczymy aktualizację.

Krok 4: Uruchom kod, naciskając klawisz F5 lub klikając przycisk Play. Widzieliśmy aktualizację wartości.

Aktualizacja VBA - przykład nr 3

Istnieje inny sposób na zaktualizowanie ekranu. Można to zrobić za pomocą pętli For-Next. W tym przykładzie wydrukujemy liczby w macierzy kombi Wiersz i kolumna. W tym celu wykonaj następujące kroki:

Krok 1: Napisz podprocedurę VBA ScreenUpdating.

Kod:

 Sub Screen_Updating3 () End Sub 

Krok 2: Teraz zadeklaruj oddzielnie 2 zmienne dla Wiersza i Kolumny jako typ danych Długi.

Kod:

 Sub Screen_Updating3 () Dim RowCount As Long Dim ColumnCount As Long End Sub 

Krok 3: Teraz zadeklaruj inną zmienną, której użyjemy jako odniesienia do rozpoczęcia liczb.

Kod:

 Sub Screen_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long End Sub 

Krok 4: Teraz podaj numer referencyjny, od którego miejsca chcemy rozpocząć liczenie. Tutaj podajemy go jako 0.

Kod:

 Sub Screen_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long MyNumber = 0 End Sub 

Krok 5: Teraz otwórz pętlę For i podaj liczbę kolumn i wierszy, które chcesz zobaczyć aktualizację. Powiedzmy od 1 do 50.

Kod:

 Sub Screen_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long MyNumber = 0 For RowCount = 1 do 50 End Sub 

Krok 6: Aby kontynuować pętlę, podaj zmienną MyNumber +1.

Kod:

 Sub Screen_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long MyNumber = 0 For RowCount = 1 do 50 For ColumnCount = 1 do 50 MyNumber = MyNumber + 1 End Sub 

Krok 7: Teraz wybierz zmienne Wiersz i Kolumna w funkcji Komórka. A następnie wybierz zapisane w nich wartości i przypisz je do zmiennej MyNumber.

Kod:

 Pod Screen_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long MyNumber = 0 For RowCount = 1 To 50 For ColumnCount = 1 To 50 MyNumber = MyNumber + 1 Cells (RowCount, ColumnCount) .Wybierz Cells (RowCount, ColumnCount). .Value = MyNumber End Sub 

Krok 8: Teraz zamknij pętlę do następnego. Uwzględnij zmienne Row i Column, które zdefiniowaliśmy i zastosowaliśmy w pętli For-Next.

Kod:

 Pod Screen_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long MyNumber = 0 For RowCount = 1 To 50 For ColumnCount = 1 To 50 MyNumber = MyNumber + 1 Cells (RowCount, ColumnCount) .Wybierz Cells (RowCount, ColumnCount). .Value = MyNumber Next ColumnCount Next RowCount End Sub 

Krok 9: Teraz nie zainstalowaliśmy jeszcze aplikacji Screenupdating. Teraz wstaw aplikację Screenupdating jako FAŁSZ przed rozpoczęciem pętli i jako PRAWDA na końcu pętli, jak pokazano poniżej.

Kod:

 Sub Screen_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long Application.ScreenUpdating = False MyNumber = 0 For RowCount = 1 To 50 For ColumnCount = 1 To 50 MyNumber = MyNumber + 1 Cells (RowCount, ColumnCount) .Wybierz komórki (RowCount, ColumnCount) .Value = MyNumber Next ColumnCount Next RowCount Application.ScreenUpdating = True End Sub 

Teraz skompiluj cały kod krok po kroku, naciskając klawisz funkcyjny F8, a następnie uruchom go, jeśli nie zostanie znaleziony błąd. Zobaczymy, jak każda komórka wybranych wierszy i kolumn jest aktualizowana o przechowywane w niej wartości.

Plusy Excel VBA ScreenUpdating

  • Jest to bardzo pomocne w sprawdzaniu, jak ekran aktualizuje się o wartość zapisaną w pętli.
  • Możemy używać Screenupdating, jeśli chcemy przełączać się między arkuszami i skoroszytami.
  • Możemy użyć dowolnego zakresu liczb.

Rzeczy do zapamiętania

  • Używamy wstawki pętli For-Next jako ramki lub najpierw możemy spełnić warunek pętli For, a następnie zamknąć ją przez Next.
  • Aktualizacja VBA jest bardzo przydatna i widoczna, jeśli używamy ogromnego zestawu liczb.
  • Po zakończeniu zapisz plik programu Excel, ponieważ makro włącza format programu Excel.
  • VBA ScreenUpdating można również wykorzystać do utworzenia makra, za pomocą którego możemy wysyłać wiadomości e-mail.

Polecane artykuły

To jest przewodnik po VBA ScreenUpdating. Tutaj omawiamy, jak korzystać z aplikacji ScreenUpdating w Excel VBA wraz z praktycznymi przykładami i szablonem Excel do pobrania. Możesz także przejrzeć nasze inne sugerowane artykuły -

  1. Kolekcja VBA (przykłady)
  2. Instrukcje VBA IF | Szablony programu Excel
  3. Jak korzystać z funkcji sortowania Excel VBA?
  4. VBA While Loop (przykłady z szablonem Excel)
  5. VBA Environ

Kategoria: