VBA - funkcje zdefiniowane przez użytkownika
ZA functionto grupa kodu wielokrotnego użytku, który można wywołać w dowolnym miejscu programu. Eliminuje to potrzebę ciągłego pisania tego samego kodu. Umożliwia to programistom podzielenie dużego programu na szereg małych i łatwych do zarządzania funkcji.
Oprócz wbudowanych funkcji, VBA umożliwia również pisanie funkcji zdefiniowanych przez użytkownika. W tym rozdziale dowiesz się, jak pisać własne funkcje w języku VBA.
Definicja funkcji
Funkcja VBA może mieć opcjonalną instrukcję return. Jest to wymagane, jeśli chcesz zwrócić wartość z funkcji.
Na przykład, możesz przekazać dwie liczby w funkcji, a następnie możesz oczekiwać od funkcji, że zwróci ich mnożenie w programie wywołującym.
Note - Funkcja może zwracać wiele wartości oddzielonych przecinkami jako tablicę przypisaną do samej nazwy funkcji.
Zanim użyjemy funkcji, musimy zdefiniować tę konkretną funkcję. Najczęstszym sposobem definiowania funkcji w języku VBA jest użycie rozszerzeniaFunction słowo kluczowe, po którym następuje unikalna nazwa funkcji i może, ale nie musi, zawierać listę parametrów i instrukcję z End Functionsłowo kluczowe, które wskazuje koniec funkcji. Poniżej znajduje się podstawowa składnia.
Składnia
Dodaj przycisk i następującą funkcję.
Function Functionname(parameter-list)
statement 1
statement 2
statement 3
.......
statement n
End Function
Przykład
Dodaj następującą funkcję, która zwraca obszar. Zauważ, że wartość / wartości mogą być zwracane z samą nazwą funkcji.
Function findArea(Length As Double, Optional Width As Variant)
If IsMissing(Width) Then
findArea = Length * Length
Else
findArea = Length * Width
End If
End Function
Wywołanie funkcji
Aby wywołać funkcję, wywołaj funkcję, używając nazwy funkcji, jak pokazano na poniższym zrzucie ekranu.
Dane wyjściowe obszaru, jak pokazano poniżej, zostaną wyświetlone użytkownikowi.