Jak wywołać Sub w VBA w Excelu (4 przykłady)

  • Udostępnij To
Hugh West

W tym artykule pokażę Ci, jak możesz wywoływać Sub od innego Sub lub Funkcja w VBA w Excel . You'll learn to call a Sub z lub bez argumentów, jak również zarówno Publiczna oraz Prywatny Subs .

Jak wywołać Sub w VBA w Excelu (szybki podgląd)

Uwaga: Tutaj a Sub o nazwie Sub2 wzywa Sub o nazwie Pod1 .

Pobierz Zeszyt ćwiczeń

VBA Call Sub.xlsm

Pobierz ten zeszyt ćwiczeń, aby ćwiczyć zadania podczas czytania tego artykułu.

4 Sposoby na wywołanie Sub w VBA w Excelu

Tutaj mamy Sub w VBA o nazwie Pod1 .

Jeśli uruchomisz Pod1 , dostaniesz wiadomość "Sub1 is Run".

Dzisiaj naszym celem jest dowiedzieć się, jak możemy nazwać to Sub od innego Sub lub Funkcja na wszystkie możliwe sposoby.

1. wywołanie Sub bez argumentów z innego Sub w VBA w Excelu

Najpierw nazwiemy Sub bez żadnego argumentu od innego Sub w VBA .

Tutaj, Pod1 to Sub bez argumentów.

Teraz nazwiemy Sub Sub1 od innego Sub o nazwie Sub2 .

Aby zadzwonić do Sub Sub1 od innego Sub , musisz użyć linii kodu:

Pod1

Albo

Wywołanie Sub1

Teraz, jeśli uruchomić Sub2 , Pod1 zostanie wywołany, a wiadomość "Sub1 is Run". zostanie wyświetlony.

2) Wywołanie Sub z argumentami z innego Sub w VBA w Excelu

Teraz nazwiemy Sub z argumentami z innego Sub w VBA .

Tutaj zmieniliśmy Sub Pod1 w taki sposób, że zawiera argument o nazwie Input_Value , a po uruchomieniu wyświetla ten argument.

Żeby to nazwać Sub od innego Sub ( Sub2 ), musimy użyć linii kodu:

Sub1(Input_Value)

Albo

Wywołaj Sub1(Input_Value)

Tutaj wykorzystaliśmy:

Wywołaj Sub1(10)

Teraz, kiedy uruchomimy Sub2 , Pod1 zostanie wywołana z wejściem 10 oraz 10 zostanie wyświetlony w Skrzynka wiadomości .

Podobne Lektury:

  • Jak zwrócić wartość w funkcji VBA (zarówno wartości tablicowe jak i nie tablicowe)
  • Użyj funkcji LCase w VBA w Excelu (z 4 przykładami)
  • Jak używać funkcji VBA SPLIT w Excelu (5 przykładów)
  • Zastosowanie funkcji TRIM w VBA w Excelu (definicja + kod VBA)

3. wywołanie funkcji z/bez argumentów z funkcji zdefiniowanej przez użytkownika w VBA w Excelu

Można również wywołać Sub od Funkcja zdefiniowana przez użytkownika w VBA .

Sub bez argumentów

Nazwijmy Sub najpierw bez argumentów.

Tutaj ponownie zmieniliśmy Sub Pod1 do tej bez argumentów.

Teraz stworzymy Funkcja o nazwie Funkcja1 i dzwonić Pod1 z tej funkcji.

Aby wywołać Sub z funkcji, linia kodu do użycia jest taka sama:

Pod1

Albo

Wywołanie Sub1

Teraz, jeśli wstawisz Funkcja1 w dowolnej komórce arkusza, Pod1 zostanie wywołany i Skrzynka wiadomości wyświetli się "Sub1 is Run". .

Sub z argumentami

Można również wywołać Sub z argumentami z Funkcja zdefiniowana przez użytkownika w VBA w Excel .

Tutaj zmieniliśmy Pod1 do tego z argumentami ponownie.

Teraz nazwaliśmy Pod1 z Funkcja1 przez linię kodu:

Wywołaj Sub1(10)

Teraz, jeśli wstawimy Funkcja1 w dowolnej komórce naszego arkusza, pokaże się 10 w Skrzynka wiadomości .

4) Wywołanie prywatnego Sub z innego Sub lub funkcji w VBA w Excelu

Do tej pory nazywaliśmy Public Sub od innego Sub lub Funkcja Tym razem pokażemy, jak można wywoływać Private Sub od innego Sub lub Funkcja w VBA .

Dzwoniąc z Sub:

Można wywołać tylko Private Sub od innego Sub jeśli te dwie osoby są w tym samym module twojego VBA okno.

Tutaj zmieniliśmy Pod1 do Private Sub poprzez dodanie określenia Prywatny w pierwszej linii. I wywołał go z Sub2 który znajduje się w tym samym module.

Teraz, jeśli uruchomisz Sub2 , dostaniesz Skrzynka wiadomości wyświetlanie 10 .

Wywoływanie z funkcji:

To samo dotyczy funkcji. Private Sub od Funkcja w VBA , Sub i Funkcja musi być w tym samym module.

Tutaj wstawiliśmy Private Sub Pod1 i Funkcja Funkcja1 w tym samym module.

Teraz, jeśli wstawimy Funkcja1 w dowolnej komórce naszego arkusza, a Skrzynka wiadomości wyświetli się 10 .

Podsumowanie

Oto podsumowanie wszystkich omawianych dziś punktów:

  • Możesz zadzwonić do Sub od innego Sub lub Funkcja zdefiniowana przez użytkownika w VBA poprzez użycie terminu "Zadzwoń" z nazwą Sub , lub po prostu umieszczając nazwę Sub .
  • Jeśli Sub do wywołania zawiera argument , musisz zadzwonić do Sub z dowolną wartością tego argument .
  • Jeśli Sub który ma być wywołany, jest zadeklarowany jako Prywatny jeden, musisz go wywołać z innego Sub lub Funkcja tego samego modułu.

Wniosek

Używając tych metod, możesz wywołać Sub od innego Sub lub Funkcja w VBA w Excelu. Masz jakieś pytania? Zapytaj nas.

Hugh West jest bardzo doświadczonym trenerem i analitykiem Excela z ponad 10-letnim doświadczeniem w branży. Posiada tytuł licencjata w dziedzinie rachunkowości i finansów oraz tytuł magistra administracji biznesowej. Hugh ma pasję do nauczania i opracował unikalne podejście do nauczania, które jest łatwe do naśladowania i zrozumienia. Jego specjalistyczna wiedza na temat programu Excel pomogła tysiącom studentów i profesjonalistów na całym świecie doskonalić swoje umiejętności i osiągać doskonałe wyniki w karierze. Za pośrednictwem swojego bloga Hugh dzieli się swoją wiedzą ze światem, oferując bezpłatne samouczki programu Excel i szkolenia online, aby pomóc osobom indywidualnym i firmom w pełni wykorzystać swój potencjał.