Jak utworzyć funkcję zdefiniowaną przez użytkownika w programie Microsoft Excel

Spisu treści:

Jak utworzyć funkcję zdefiniowaną przez użytkownika w programie Microsoft Excel
Jak utworzyć funkcję zdefiniowaną przez użytkownika w programie Microsoft Excel

Wideo: Jak utworzyć funkcję zdefiniowaną przez użytkownika w programie Microsoft Excel

Wideo: Jak utworzyć funkcję zdefiniowaną przez użytkownika w programie Microsoft Excel
Wideo: In-depth: ELF - The Extensible & Linkable Format 2024, Może
Anonim

Microsoft Excel ma wiele wbudowanych funkcji, takich jak SUMA, WYSZUKAJ. PIONOWO i LEWO. Gdy zaczniesz używać programu Excel do bardziej skomplikowanych zadań, może się okazać, że potrzebujesz funkcji, która nie istnieje. Tutaj wkraczają funkcje niestandardowe! Ta wikiHow uczy, jak tworzyć własne funkcje w programie Microsoft Excel.

Kroki

259250 1
259250 1

Krok 1. Otwórz skoroszyt programu Excel

Kliknij dwukrotnie skoroszyt, w którym chcesz użyć funkcji zdefiniowanej przez użytkownika, aby otworzyć go w programie Excel.

259250 2
259250 2

Krok 2. Naciśnij Alt+F11 (Windows) lub Fn+⌥ Opt+F11 (Mac).

Spowoduje to otwarcie Edytora Visual Basic.

259250 3
259250 3

Krok 3. Kliknij menu Wstaw i wybierz Nowy moduł

Spowoduje to otwarcie okna modułu w prawym panelu edytora.

Możesz utworzyć funkcję zdefiniowaną przez użytkownika w samym arkuszu bez dodawania nowego modułu, ale to uniemożliwi korzystanie z funkcji w innych arkuszach tego samego skoroszytu

259250 4
259250 4

Krok 4. Utwórz nagłówek swojej funkcji

Pierwsza linia to miejsce, w którym nazwiesz funkcję i zdefiniujesz nasz zakres. Zastąp „FunctionName” nazwą, do której chcesz przypisać funkcję niestandardową. Funkcja może mieć dowolną liczbę parametrów, a ich typami mogą być dowolne podstawowe dane lub typy obiektów programu Excel, takie jak Zakres:

Function FunctionName (param1 As type1, param2 As type2) As return Type

Możesz myśleć o parametrach jako o „operandach”, na których będzie działać twoja funkcja. Na przykład, gdy używasz SIN(45) do obliczenia sinusa 45 stopni, wartość 45 będzie traktowana jako parametr. Następnie kod twojej funkcji użyje tej wartości do obliczenia czegoś innego i przedstawienia wyniku

259250 5
259250 5

Krok 5. Dodaj kod funkcji

Upewnij się, że używasz wartości podanych w parametrach, przypisz wynik do nazwy funkcji i zamknij funkcję poleceniem „End Function”. Nauka programowania w VBA lub w dowolnym innym języku może zająć trochę czasu i szczegółowy samouczek. Jednak funkcje zwykle mają małe bloki kodu i wykorzystują bardzo niewiele funkcji języka. Niektóre przydatne elementy to:

  • Blok If, który umożliwia wykonanie części kodu tylko wtedy, gdy spełniony jest warunek. Zwróć uwagę na elementy w bloku kodu If: warunek IF THEN kod ELSE kod END IF. Słowo kluczowe Else wraz z drugą częścią kodu są opcjonalne:

    Funkcja Wynik kursu(ocena jako liczba całkowita) As String Jeśli ocena >= 5 Then CourseResult = "Zatwierdzony" Else CourseResult = "Odrzucony" End If End Function

  • Blok Do, który wykonuje część kodu while lub dopóki nie zostanie spełniony warunek. W poniższym przykładzie zwróć uwagę na warunek elementów DO code LOOP WHILE/UNTIL. Zwróć także uwagę na drugi wiersz, w którym zadeklarowana jest zmienna. Możesz dodać zmienne do swojego kodu, aby móc z nich później korzystać. Zmienne działają jako wartości tymczasowe wewnątrz kodu. Na koniec zwróć uwagę na deklarację funkcji jako BOOLEAN, która jest typem danych, który dopuszcza tylko wartości TRUE i FALSE. Ta metoda określania, czy liczba jest liczbą pierwszą, nie jest zdecydowanie optymalna, ale zostawiłem ją w ten sposób, aby kod był łatwiejszy do odczytania.

    Funkcja IsPrime(wartość As Integer) As Boolean Dim i As Integer i = 2 IsPrime = True Do If value / i = Int(value / i) Then IsPrime = False End If i = i + 1 Loop While i < value And IsPrime = Funkcja prawdziwego końca

  • Blok For wykonuje część kodu określoną liczbę razy. W następnym przykładzie zobaczysz elementy FOR zmienna = dolna granica TO górna granica kod NEXT. Zobaczysz również dodany element ElseIf w instrukcji If, który umożliwia dodanie większej liczby opcji do kodu, który ma zostać wykonany. Dodatkowo deklaracja funkcji i zmiennej result jako Long. Typ danych Long dopuszcza wartości znacznie większe niż Integer:

    Funkcja publiczna Silnia(wartość As Integer) As Long Dim wynik As Long Dim i As Integer Jeżeli wartość = 0 Wtedy wynik = 1 ElseIf wartość = 1 Wtedy wynik = 1 W przeciwnym razie wynik = 1 Dla i = 1 Do wartości wynik = wynik * i Dalej End If Silnia = wynik Koniec funkcji

259250 6
259250 6

Krok 6. Zamknij Edytor Visual Basic

Po utworzeniu funkcji zamknij okno, aby powrócić do skoroszytu. Teraz możesz zacząć korzystać z funkcji zdefiniowanej przez użytkownika.

259250 7
259250 7

Krok 7. Wprowadź swoją funkcję

Najpierw kliknij komórkę, w której chcesz wprowadzić funkcję. Następnie kliknij pasek funkcji u góry programu Excel (ten z fx po lewej stronie) i wpisz =FUNCTIONNAME(), zastępując FUNCTIONNAME nazwą, którą przypisałeś swojej niestandardowej funkcji.

Formułę zdefiniowaną przez użytkownika można również znaleźć w kategorii „Zdefiniowane przez użytkownika” w Wstaw formułę kreator - wystarczy kliknąć fx, aby uruchomić kreatora.

259250 8
259250 8

Krok 8. Wprowadź parametry w nawiasach

Na przykład =LiczbaDoLiterów(A4). Parametry mogą mieć trzy typy:

  • Wartości stałe wpisywane bezpośrednio w formule komórki. W tym przypadku ciągi znaków muszą być cytowane.
  • Odwołania do komórek, takie jak B6 lub odwołania do zakresów, takie jak A1:C3. Parametr musi być typu danych Range.
  • Inne funkcje zagnieżdżone w Twojej funkcji. Twoja funkcja może być również zagnieżdżona w innych funkcjach. Przykład: = Silnia(MAX(D6:D8)).
259250 9
259250 9

Krok 9. Naciśnij ↵ Enter lub ⏎ Wróć, aby uruchomić funkcję.

Wyniki zostaną wyświetlone w wybranej komórce.

Wideo - Korzystając z tej usługi, niektóre informacje mogą być udostępniane YouTube

Porady

  • Użyj nazwy, która nie została jeszcze zdefiniowana jako nazwa funkcji w programie Excel, w przeciwnym razie będziesz mógł używać tylko jednej z funkcji.
  • Za każdym razem, gdy piszesz blok kodu w strukturze kontrolnej, takiej jak If, For, Do itp., Upewnij się, że blok kodu został wcięty za pomocą kilku spacji lub klawisza Tab. Dzięki temu Twój kod będzie łatwiejszy do zrozumienia, a znacznie łatwiej będzie dostrzec błędy i wprowadzać ulepszenia.
  • Jeśli nie wiesz, jak napisać kod funkcji, zobacz Jak napisać proste makro w programie Microsoft Excel.
  • Funkcja może nie wymagać wszystkich parametrów do obliczenia wyniku. W takim przypadku możesz użyć słowa kluczowego Opcjonalne przed nazwą parametru w nagłówku funkcji. Możesz użyć IsMissing(nazwa_parametru) wewnątrz kodu, aby określić, czy parametrowi przypisano wartość, czy nie.
  • Excel ma wiele wbudowanych funkcji, a większość obliczeń można wykonać, używając ich niezależnie lub w połączeniu. Upewnij się, że przejrzysz listę dostępnych funkcji, zanim zaczniesz kodować własne. Wykonywanie może być szybsze, jeśli korzystasz z wbudowanych funkcji.

Ostrzeżenia

  • Funkcje użyte w tym artykule w żadnym wypadku nie są najlepszym sposobem rozwiązania powiązanych problemów. Wykorzystano je tutaj jedynie w celu wyjaśnienia użycia struktur kontrolnych języka.
  • VBA, jak każdy inny język, ma kilka innych struktur kontrolnych oprócz Do, If i For. Zostały one wyjaśnione tutaj tylko po to, aby wyjaśnić, jakie rzeczy można zrobić w kodzie źródłowym funkcji. Dostępnych jest wiele samouczków online, w których możesz nauczyć się VBA.
  • Ze względu na środki bezpieczeństwa niektóre osoby mogą wyłączyć makra. Upewnij się, że Twoi współpracownicy wiedzą, że wysyłana im książka zawiera makra i że mogą ufać, że nie uszkodzą ich komputerów.

Zalecana: