|
Microsoft Excel posiada wiele różnorodnych funkcji wbudowanych z których możemy korzystać. Na tej stronie chciałbym pokazać jak można utworzyć i wykorzystać własną funkcje w arkuszu Excela. Kody przykładowych funkcji są bardzo proste, oczywiście można tworzyć funkcje o wiele bardziej skomplikowane zależy to tylko od inwencji i potrzeb użytkownika.
Kod przykładowej funkcji:
Public Function ObliczPole(Wys, Szer) ObliczPole = Wys * Szer ' obliczamy pole prostokąta End Function
Public Function ObliczPole(Wys, Szer) - W tej linii kodu deklaruje typ, nazwę i argumenty składające się na procedurę typu Function. Element Public wskazuje, że procedura typu Function jest dostępna dla wszystkich innych procedur we wszystkich modułach. Fragment linii: ObliczPole, jest to nazwa naszej procedury typu Function. Natomiast fragment: (Wys, Szer), jest to lista zmiennych reprezentujących argumenty przekazywane do Funkcji w trakcie jej wywoływania. Jeżeli występuje wiele zmiennych, to należy je rozdzielić przecinkami.
ObliczPole = Wys * Szer - Ten kod oblicza pole prostokąta o bokach określonych przez argumenty (zmienne) o nazwach Wys i Szer a obliczoną wartość przypisujemy nazwie naszej funkcji. Kod ten jest bardzo prosty ale może to być dowolny blok instrukcji, które mają być wykonane wewnątrz procedury typu Function.
End Function - Kończymy instrukcje Function.
Z menu Widok wybieramy Paski narzędzi a następnie opcje Visual Basic (jeżeli nie jest zaznaczona).
Z paska narzędzi Visual Basic wybieramy przycisk Edytor Visual Basic.
W nowo otwartym oknie (Microsoft Visual Basic...) z menu Widok wybieramy kolejną opcję:
Powinny się otworzyć okienka: Okno Eksplorator projektu i Okno Właściwości, dla własnej wygody dopasowujemy rozmiar i położenie okienek (oczywiście punktu tego nie wykonujemy jeżeli okienka były wcześniej otwarte).
Z menu Wstaw wybieramy Moduł.
W oknie Właściwości zmieniamy nazwę (Name) naszego modułu na np. MojeFunkcje.
Ustawiamy kursor myszy w oknie Zeszyt1-MojeFunkcje(Kod programu). Następnie z menu Wstaw wybieramy opcje Procedura.
W nowo otwartym oknie Wstaw procedurę:
w polu Nazwa piszemy nazwę naszej funkcji w naszym przypadku ObliczPole
w polu Typ zaznaczamy opcję Funkcja
w polu Zasięg zaznaczamy Publiczny
Dodaj do szablonu funkcji ObliczPole() pomiędzy nawiasy parametry o nazwach: Wys i Szer, oddzielając je przecinkiem.
Pomiędzy linie kodu Public Function ObliczPole(Wys, Szer) i End Function wstaw kod: ObliczPole = Wys * Szer
Zamknij Edytor Visual Basic (lewy Alt+Q) i powróć do arkusza.
Nasza funkcja jest już gotowa, wstawiamy ją do arkusza tak samo jak każdą funkcje wbudowaną.
Zaznaczamy dowolną komórkę Arkusza Excela np. H12.
Z Menu Wstaw wybieramy opcje Funkcja.
W nowo otwartym oknie z pola Kategoria funkcji: wybieramy kategorie Użytkownika, następnie z pola Nazwa funkcji: naszą funkcję ObliczPole i naciskamy OK.
W następnym oknie wpisujemy argumenty funkcji, możesz tam wpisać wartości liczbowe lub nazwę komórki z której wartości mają być pobierane np. jako parametr Wys wpisujemy B12 a parametr Szer D12, naciskamy przycisk OK.
Wpisz przykładowe wartości do podanych wyżej komórek i przetestuj działanie programu.
Inne proste przykłady funkcji:
Public Function ObliczPoleKola(Promien) ObliczPoleKola = 3.14 * Promien * Promien ' obliczamy pole koła End Function
Public Function Celsius(FahrenheitaStopnie) Celsius = (FahrenheitaStopnie - 32) * 5 / 9 ' w przykładzie funkcja Celsius przelicza stopnie Fahrenheita na stopnie Celsjusza End Function
Public Function Premia(stanowisko, pensja) Select Case stanowisko Case 1 Premia = pensja * 0.1 Case 2, 3 Premia = pensja * 0.09 Case 4 To 8 Premia = pensja * 0.07 Case Else Premia = pensja * 0.05 End Select' funkcja oblicza wysokość premii. End Function
Public Function KupujAuto(zarobek, cena) If 4 * zarobek < 0.8 * cena Then KupujAuto = "Nie stać Cię" Else KupujAuto = "Kupuj" End If' sprawdzamy czy stać nas na kupno samochodu.
|