Spis treści
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.