Procedura podrzędna Excel VBA
SUB w VBA jest również znany jako podprogram lub procedura, która zawiera cały kod, jest to instrukcja wbudowana w VBA i gdy jest używana, automatycznie podaje nam instrukcję end sub, a środkowa część jest używana do kodowania, instrukcja sub może być zarówno publiczne, jak i prywatne, a nazwa podprocedury jest obowiązkowa w języku VBA.
Sub oznacza procedurę podrzędną w języku VBA. Procedury podrzędne są używane do wykonywania określonego zestawu zadań dostarczonych w postaci kodu. Wykonuje tylko zadanie wymienione w kodzie zgodnie z językiem VBA, ale nie zwraca żadnej wartości.
Jak napisać procedury podrzędne VBA?
Możesz pobrać ten szablon procedury podrzędnej VBA tutaj - szablon procedury podrzędnej VBAAby napisać kody podprocedur, ważne jest zrozumienie struktury podprocedury. Poniżej znajduje się struktura
Sub [nazwa procedury] (parametry) [co należy zrobić?]) End Sub
Aby rozpocząć podprocedurę, musimy użyć słowa „Sub” i nadać nazwę Sub jako nazwę procedury. Nazwa procedury to nic innego jak nazwa naszego makra. W podprocedurze VBA zwykle nie mamy parametrów w nawiasach.
Po wpisaniu nazwy procedury Sub musimy napisać zadania do wykonania. Następnie pojawia się instrukcja End, czyli End Sub.
Przykład 1 - Prosta procedura podrzędna
Przyjrzyjmy się teraz prostym metodom pisania podprocedur.
Krok 1: Rozpocznij słowo „Sub” w module.
Krok 2: Teraz nazwij nazwę makra lub nazwę procedury.
Krok 3: Po nadaniu nazwy podprocedurze wystarczy nacisnąć klawisz Enter, a automatycznie zastosuje instrukcję end.
Teraz widzimy tutaj dwie rzeczy, jedna to początek, a druga to koniec podprocedury. Dla lepszego zrozumienia możemy nazwać to „głową” i „ogonem”.
Między początkiem a ogonem makra musimy napisać nasz kod, aby wykonać jakieś zadanie.
Przykład # 2 - Proste zadanie podprogramu
Ok, teraz zobaczymy, jak wykonać tutaj prostą czynność.
Załóżmy, że chcesz wstawić wartość „Excel VBA” do komórki A1.
Krok 1: Uruchom podprocedurę przy użyciu powyższych metod.
Kod:
Sub Action1 () End Sub
Krok 2: Aby uzyskać dostęp do komórki A1, musimy użyć słowa RANGE.
Kod:
Sub Action1 () Range (End Sub
Krok 3: Pytanie brzmi, do której komórki 1 chcesz się odnieść? W tym przypadku jest to komórka A1.
Kod:
Sub Action1 () Range ("A1") End Sub
Krok 4: Musimy wstawić wartość „Excel VBA”, więc wybierz właściwość WARTOŚĆ, umieszczając kropkę po zakresie.
Kod:
Sub Action1 () Range („A1”). Value End Sub
Po rozpoczęciu wpisywania słowa WARTOŚĆ zobaczysz wiele opcji, a te opcje nazywane są listą IntelliSense, która przewiduje na podstawie tego, co wpisujesz. To tak, jak formuły pojawią się w arkuszu, gdy zaczniemy pisać formułę.
Krok 5: Po wybraniu WARTOŚCI postaw znak równości i wprowadź wartość w podwójnych cudzysłowach jako „Excel VBA”.
Kod:
Sub Action1 () Range („A1”). Value = „Excel VBA” End Sub
Więc skończyliśmy.
Teraz musimy wykonać to zadanie. Aby wykonać zadanie, które wróciliśmy, musimy uruchomić ten kod, naciskając przycisk RUN w oknie edytora Visual Basic.
Możemy również nacisnąć klawisz skrótu programu Excel, umieszczając kursor wewnątrz kodu makra.
Jak tylko uruchomisz kod, w komórce A1 otrzymasz wartość „Excel VBA”.
Typy podprogramów VBA
Mamy jeszcze dwa typy w procedurze podrzędnej, jedna to procedura publiczna, a druga to procedura prywatna.
Słowa „Publiczny” i „Prywatny” to modyfikatory dostępności, które pozwalają nam inaczej używać ich procedur podrzędnych.
- Public Sub Procedura pozwala nam używać tej procedury we wszystkich modułach skoroszytu.
- Procedura Private Sub pozwala nam używać tej procedury tylko w bieżącym module, nigdzie indziej.
Na przykład spójrz na poniższy obraz kodu publicznego, który znajduje się w module 1.
Teraz w module 2 również mogę skorzystać z tej podprocedury.
Akcja1 to nazwa podprocedury, której użyliśmy w module 1.
W module 2 wspomniałem o tym jako „Call Action1”. Oznacza to, że po uruchomieniu podprocedury wykona ona podprocedurę Action1 z modułu 1.
Nie można uzyskać dostępu do prywatnych procedur podrzędnych z innego modułu, musimy uzyskać do nich dostęp tylko z tego samego modułu.