Chcesz zautomatyzować powtarzalne zadania w Excel VBA? Dowiedz się, jak korzystać z pętli Do-While, aby wielokrotnie wykonywać zestaw akcji, dopóki warunek nie zostanie spełniony.

Pętle są integralną częścią każdego języka kodowania i można zautomatyzować wiele powtarzalnych zadań, używając różnych pętli, w zależności od używanego języka. VBA Excela nie różni się od innych, ponieważ oferuje szereg opcji pętli, z których każda służy do innego celu.

Możesz użyć tych pętli, definiując punkty początkowe i końcowe, warunki i parametry. Jedną z takich wyróżniających się pętli w VBA jest pętla do-while, której można używać do pracy z automatyzacją danych. Oto jak korzystać z pętli do-while programu Excel VBA, niezwykle istotnej metodologii zapętlania, która może w znacznym stopniu uprościć ręczne zadania.

Co to jest pętla Do-While w programie Excel VBA?

Pętla do-while jest dość prosta; możesz użyć tej pętli do wykonania licytacji, jeśli chcesz wygenerować pożądane wyjście w oparciu o określony warunek. Pętla jest wykonywana, dopóki określony warunek (warunki) nie będzie prawdziwy. Gdy program napotka wartość False, pętla kończy działanie i wyświetla wyniki w wyznaczonych komórkach.

instagram viewer

Pętli do-while można używać na różnych etapach iz różnymi kryteriami; możesz nawet użyć wielu pętli wewnątrz głównej zewnętrznej pętli, aby zwiększyć jej wykorzystanie. Jako początkujący powinieneś odnieść się do opracowania Kursy programowania VBA pogłębić swoją wiedzę i umiejętności w tej dziedzinie.

Składnia pętli Do-While w programie Excel VBA

Pętla do-while ma z góry zdefiniowaną strukturę, której należy przestrzegać, aby zapewnić płynne działanie bez popełniania błędów. Oto składnia dla odniesienia:

Dochwila [odniesienie_warunku]

[Oświadczenia dotyczące kryteriów]

Pętla

Pętla zaczyna się od słowa kluczowego do-while, po którym następują odnośniki początkowe i końcowe. Pierwsza część składni kontroluje całą pętlę. Następnie musisz zdefiniować instrukcje, które będą wykonywane przy każdym uruchomieniu pętli.

Wreszcie, gdy warunek pętli uzyska wartość False, słowo kluczowe loop jest wykonywane i kończy pętlę. To jest ogólna struktura; możesz go udoskonalić, aby wykonywać różne działania. Oto kilka przykładów, aby zapoznać się z działaniem pętli do-while.

Pisanie pierwszego kodu pętli Do-While

Załóżmy, że chcesz wyświetlić wielokrotności dwójki w kolumnie A. Warunkiem jest drukowanie liczb, aż licznik osiągnie 20.

Aby to zrobić, przejdź do karty Deweloper w programie Excel i otwórz edytor kodowania; alternatywnie naciśnij Alt + F11 aby bezpośrednio otworzyć edytor kodowania. W oknie edytora kodu kliknij przycisk Wstawić kartę i dodaj nowy moduł.

Musisz napisać cały kod w tym oknie modułu. Dodaj następujący kod wewnątrz modułu:

Podrzędna pętla dowhile()

przyciemnić Jak Liczba całkowita

za = 1

DoChwila a <= 10

Komórki (a, 1) = 2 * a

za = za + 1

Pętla

Koniec Pod

Wyjaśnienie kodu

Oto podział kodu, który pomoże Ci opanować podstawy:

  • Użyj podprogramu: Aby rozpocząć pisanie kodu w Excel VBA, utwórz zewnętrzną powłokę z funkcją podprogramu (Sub). Nadaj mu sensowną nazwę, która współgra z celem kodu. W tym przykładzie możesz użyć nazwy dowhileloop, po której następuje znak ().
  • Zdefiniuj typy danych: Do deklarowania zmiennych typów danych należy użyć funkcji wymiaru (dim). Deklarując typ danych, możesz zwiększyć wydajność kodu i poprawić szybkość wykonywania. W tym przypadku zmienna A przechowuje wartości całkowite, więc do zdefiniowania użyj typu danych całkowitych. Możesz zapisać początkowy numer wiersza w tej zmiennej, aby zadeklarować początkowy punkt danych pętli do-while.
  • Zdefiniuj warunki: Teraz nadszedł czas, aby spełnić warunek kontrolujący pętlę do-while. Możesz użyć robić podczas słowa kluczowe, po których następuje warunek. Ponieważ chcesz uruchomić pętlę dziesięć razy, użyj warunku za < = 10.
  • Przekaż instrukcje wykonywalne: Ważne jest, aby znać różnicę między Funkcja komórek i funkcja Range w VBA. Funkcja komórek używa odwołań do wierszy i kolumn w języku VBA. Na przykład podczas pierwszej iteracji, gdy wartość a = 1, formuła komórki to (1,1). W pamięci VBA przekłada się to na komórkę A1. Za każdym razem, gdy wykonywana jest pętla, wartość zdefiniowanej zmiennej zwiększa się, a odwołanie przechodzi do następnej dostępnej komórki.
  • Zwiększ swoją zmienną: Możesz przejść za = za + 1 instrukcja, aby zwiększyć wartości komórek. To przenosi pętlę do następnej części warunku; pętla kontynuuje działanie, dopóki warunek nie otrzyma wartości False.
  • Wyjdź z warunku Loop: Gdy warunek ma wartość False, pętla kończy działanie słowem kluczowym Loop, a na koniec opuszcza podprogram standardowy słowem kluczowym End Sub.
  • Wykonanie kodu: Ponieważ kod jest gotowy, po prostu naciśnij klawisz F5 lub zielony przycisk odtwarzania na górnym pasku menu, aby wykonać kod.

Wynik końcowy pokazuje listę liczb od 2 do 20 w kolumnie A.

Używanie wstępnie wypełnionej kolumny jako warunku pętli

Skoro już zrozumiałeś składnię i niuanse konstruowania podstawowej struktury, dlaczego nie napisać innego kodu, który drukuje podobne liczby na podstawie wcześniej istniejących kryteriów? Na przykład możesz utworzyć warunek pętli, który pobiera swoją pamięć z kolumny A i wyświetla dane wyjściowe w kolumnie B.

Na podstawie całkowitej liczby wypełnionych komórek w kolumnie A możesz wydrukować wielokrotności dwóch w kolumnie B. Pętla uruchamia całkowitą liczbę wstępnie wypełnionych komórek w kolumnie A. Ponieważ wartość wiersza początkowego to jeden (a = 1), wartość końcowa jest dynamiczna i jest obliczana automatycznie przez pętlę do-while.

Korzystając z wartości wiersza, kod przechodzi przez każdą komórkę w kolumnie A i mnoży liczbę przez 2. Dane wyjściowe są pokazane w kolumnie B.

Jeśli w kolumnie A jest więcej niż dziesięć wartości, pętla będzie działać, dopóki nie napotka pustej wartości w pierwszej kolumnie. Podobnie, możesz napisać jeszcze bardziej złożone warunki w pętli do-while i użyć jej do sprawdzenia warunków i wyświetlenia danych wyjściowych w razie potrzeby.

Używanie instrukcji IF w pętli Do-While

Podobnie jak w przypadku pętli zagnieżdżonych, możesz użyć instrukcji IF w pętli Do-While, aby dodać kolejną warstwę warunku. W takim przypadku pętla do-while wykonuje całą pętlę, dopóki warunek nie zostanie spełniony, a wewnętrzna instrukcja IF jest wykonywana za każdym razem, gdy pętla jest uruchamiana.

W poniższym przykładzie pętla do-while przechodzi przez każdą komórkę w kolumnie A, aż napotka pustą komórkę. Następnie instrukcja IF sprawdza wartość każdej komórki w kolumnie A i drukuje dane wyjściowe w kolumnie B. Gdy tylko zewnętrzna pętla napotka pustą komórkę w kolumnie A, pętla zatrzymuje się i wychodzi z podprogramu.

Dane wyjściowe są następujące:

Dopóki wartość w kolumnie A nie jest mniejsza niż pięć, wynikowa wartość w kolumnie B wynosi pięć. W A6, ponieważ wartość komórki jest większa niż pięć, wynikiem jest siedem, co jest zsynchronizowane z warunkiem JEŻELI.

Odkrywanie wieloaspektowych funkcjonalności języka VBA

Excel i VBA tworzą bardzo sprzyjającą kombinację do przeprowadzania zaawansowanej analizy danych. Nawet bez VBA możesz używać różnych funkcji logicznych Excela do wykonywania skomplikowanych zadań, co jest przykładem twoich umiejętności programistycznych.

Jeśli interesujesz się analizą danych i używasz programu Excel w swoich codziennych czynnościach, możesz odnieść ogromne korzyści z korzystania z wieloaspektowych funkcji logicznych programu Excel.