Funkcje niestandardowe programu Excel - Twórz niestandardowe funkcje zdefiniowane przez użytkownika

Jak tworzyć niestandardowe funkcje programu Excel? (z przykładami)

Aby utworzyć funkcję niestandardową, musimy napisać kod do działania naszych własnych funkcji, który nazywa się „UDF”. Funkcje niestandardowe to funkcje zdefiniowane przez użytkownika w programie Excel, więc aby je utworzyć, musisz dokładnie znać kodowanie VBA.

Przykład 1 - Dodaj dowolne dwie liczby

Na przykład, jeśli chcesz dodać dowolne dwie liczby, pokażemy Ci prostą funkcję zdefiniowaną przez użytkownika (UDF).

  • Naciśnij klawisze Alt + F11 i wstaw moduł.
  • Napisz kod w module, aby utworzyć funkcję niestandardową.

Każda funkcja niestandardowa powinna zaczynać się od słowa „Funkcja”, po którym następuje nazwa formuły.

Każda funkcja ma swoje argumenty lub parametry podobnie jak funkcje niestandardowe; musimy zdefiniować te parametry. Ponieważ dodajemy tylko dwie liczby, zdefiniujmy te parametry i przypiszmy typy danych do tych zmiennych argumentów.

Po zdefiniowaniu parametrów z typem danych, musimy również zdefiniować typy danych wyniku. Zdefiniujmy wynik jako wartość „Integer”.

Wewnątrz tej „procedury funkcji” napiszemy kod formuły.

Kod:

Funkcja dodawanie (Num1 jako liczba całkowita, Num2 jako liczba całkowita) jako liczba całkowita Dodawaniea = Num1 + Num2 Koniec funkcji

Oznacza to, że wynik nazwy funkcji „Dodawanie” będzie sumą wartości Num1 i Num2.

  • Teraz wróć do arkusza roboczego i wprowadź dowolne dwie liczby całkowite.
  • Dodamy teraz te dwie liczby. Otwórz znak równości i wprowadź nazwę funkcji niestandardowej „Dodawanie”.

Wybierz pierwszą i drugą liczbę, wprowadzając separator jako przecinek (,).

  • Naciśnij klawisz Enter, aby uzyskać wynik.

Łał!!! Podobnie jak w przypadku funkcji SUMA, otrzymaliśmy wynik sumy dwóch liczb.

Teraz spójrz na te liczby.

Spróbuj teraz dodać te dwie liczby.

Otrzymaliśmy wartość błędu, ponieważ typ danych argumentów „Num1 i Num2” to „Integer”, tj. Te dwa argumenty mogą zawierać wartości od -32767 do 32767, więc cokolwiek więcej niż to spowoduje te błędy.

Teraz spróbuj dodać te dwie liczby.

Nawet to spowoduje poniżej wartości błędu.

Mimo że wartości poszczególnych argumentów mieszczą się w limicie typu danych Integer, nadal otrzymujemy ten błąd, ponieważ całkowita suma tych liczb jest większa niż wartość graniczna liczby całkowitej.

Ponieważ typ wyniku zadeklarowaliśmy również jako „integer”, wynik dodania dwóch liczb powinien być również ograniczeniem liczby całkowitej.

Przykład nr 2 - Dodaj wszystkie liczby nieparzyste

Program Excel nie ma żadnej wbudowanej funkcji, która może dodawać wszystkie liczby nieparzyste z listy liczb. Ale nie martw się, stworzymy niestandardową funkcję programu Excel, która to obsługuje.

Otwórz okno edytora VBA i nadaj nazwę procedurze funkcji.

Podaj parametr tej funkcji jako „Zakres”.

Oznacza to, że dla tej funkcji podajemy wartość wejściową dla tej funkcji jako „Zakres” wartości komórek.

Ponieważ musimy przejść przez więcej niż jedną komórkę, musimy użyć pętli „For Each” w języku VBA, więc otwórz pętlę „For Each”.

Wewnątrz tej pętli dodaj poniższy kod.

Kod:

Funkcja AddOdd (Rng As Range) For Each cell in Rng If cell.Value Mod 2 0 Then AddOdd = AddOdd + cell.Value Następna komórka Koniec Funkcja

Musimy użyć funkcji „MOD”, aby przetestować liczbę. Kiedy wartość każdej komórki jest podzielona przez liczbę 2, a pozostała wartość nie jest równa zero, nasz kod powinien dodać wszystkie wartości liczb nieparzystych.

Teraz wróć do arkusza roboczego i otwórz niestandardową funkcję programu Excel.

Wybierz zakres liczb od A1 do D8.

Naciśnij klawisz Enter, aby uzyskać wynik w postaci „nieparzystej” liczby. ”

Tak więc w zakresie od A1 do D8 suma liczb nieparzystych wynosi 84.

Przykład 3 - Dodaj wszystkie liczby parzyste

Podobnie, poniższa funkcja doda wszystkie liczby parzyste.

Kod:

Funkcja AddEven (Rng As Range) For Each cell in Rng If cell.Value Mod 2 = 0 Then AddEven = AddEven + cell.Value Następna komórka End Function

Ta funkcja doda tylko liczbę parzystą. W tym przypadku użyliśmy logiki, jeśli wartość każdej komórki jest podzielona przez 2, a reszta jest równa zero, to kod doda tylko te wartości komórek.

W ten sposób, używając kodowania VBA, możemy tworzyć własne funkcje niestandardowe.

Rzeczy do zapamiętania

  • Tworzenie funkcji niestandardowych to nic innego jak funkcje zdefiniowane przez użytkownika.
  • Aby tworzyć niestandardowe funkcje, należy mieć wiedzę na temat zaawansowanych umiejętności kodowania VBA.
  • Podczas tworzenia niestandardowych funkcji programu Excel należy zwracać uwagę na argumenty i ich typy danych.

Interesujące artykuły...