VBA z / zakończ z oświadczeniem

W tym artykule pokażemy, jak używać With i End With w VBA

Excel daje nam możliwość nauki VBA poprzez nagrywanie makr. Te makra rejestrują dosłownie wszystko, co robimy na ekranie i konwertują akcje na kod VBA. Możemy wtedy przeanalizować ten kod i uczyć się z niego.

Kiedy nagrywamy makro w VBA, a co najważniejsze, gdy zmieniamy format komórek, makro najczęściej używa w swoim nagraniu składni With… End With. Zrozumienie, co one oznaczają i są używane, jest ważną częścią VBA.

Nagrywanie makra

Aby nagrać makro w programie Excel, w Wstążka, Wybierz Widok > Makro > Nagraj makro.

LUB

Deweloper > Nagraj makro

Uwaga: Jeśli nie widzisz Wstążki programisty, musisz ją włączyć. Kliknij TUTAJ, aby dowiedzieć się, jak to zrobić.

Wpisz nazwę makra i kliknij OK.

Zaznacz niektóre komórki, a następnie sformatuj je jako pogrubienie, zmień kolor na czerwony i zmień rozmiar czcionki. Następnie kliknij Zatrzymaj w lewym dolnym rogu ekranu, aby zatrzymać nagrywanie makra.

Składnia instrukcji WITH

Aby wyświetlić/edytować nagrane makro: Na Wstążce wybierz Widok > Makra > Wyświetl makra. Wybierz właśnie nagrane makro, a następnie kliknij Edytować.

LUB

Na Wstążce wybierz Deweloper > Visual Basic aby przejść do okna VBE.

Nagrane makro może wyglądać podobnie do poniższego przykładu

123456789 Sub zmakro()Zakres ("A2:C10").WybierzZaznaczenie.Czcionka.Pogrubienie = PrawdaWybór.Rozmiar.Czcionki = 12Z zaznaczeniem. Czcionka.Kolor = -16776961.OdcieńIOdcień = 0Kończyć zNapis końcowy

Po pierwsze, wybraliśmy zakres A2:C10.

Następnie ustawiliśmy pogrubienie na true, a rozmiar czcionki na 12. Zauważ, że kod „Selection.Font” jest powtarzany dla tych wierszy.

Makro zarejestrowało nam wtedy zmianę koloru tekstu - zauważ, że tym razem zaznaczenie. Czcionka ma Z przed nim, a dwie zmieniane właściwości (kolor i odcień) mają przed sobą kropkę (.). Obszar kodu jest następnie uzupełniany za pomocą KOŃCZYĆ Z.

Aby uprościć ten kod, możemy przenieść Bold i Size, aby znalazły się w instrukcji WITH, a tym samym usunąć potrzebę powtarzania słowa Selection.

123456789 Sub zmakro()Zakres ("A2:C10").WybierzZ zaznaczeniem. Czcionka.Pogrubienie = Prawda.Rozmiar = 12.Kolor = -16776961.OdcieńIOdcień = 0Kończyć zNapis końcowy

Składnia instrukcji WITH… END WITH jest zatem bardzo prosta:

123 Z Obiektem„właściwości do formatowania/zmiany”KOŃCZYĆ Z

Mogliśmy zmienić kod w inny sposób:

1234567 Sub UsuńZ()Zakres ("A2:C10").WybierzZaznaczenie.Czcionka.Pogrubienie = PrawdaWybór.Rozmiar.Czcionki = 12Zaznaczenie.Kolor czcionki = -16776961Zaznaczenie.Czcionka.TintAndShade = 0Napis końcowy

W powyższym przykładzie dodaliśmy słowa Selection.Font do każdej linii kodu. Dlatego wielokrotnie odwoływaliśmy się w kodzie do obiektu Selection.Font.

Jednak użycie instrukcji WITH oznacza, że ​​musimy odwołać się do tego obiektu tylko raz w kodzie. Jest to czystszy sposób kodowania - mówi VBA, aby zaczynał się od Z i kończył na KONIEC Z - kod do uruchomienia jest zawarty w tych 2 słowach. Sprawia, że ​​makro działa szybciej i wydajniej (szczególnie w przypadku dłuższych makr) i dodaje strukturę do kodu.

Będziesz pomóc w rozwoju serwisu, dzieląc stronę ze swoimi znajomymi

wave wave wave wave wave