Funkcje w Excel VBA

1. Wprowadzenie do funkcji w Excel VBA

Doszedłeś już do rozdziału o funkcjach – Gratulacje, tak trzymaj !!! W VBA mamy do dyspozycji szereg przydatnych funkcji. To właśnie za ich pomocą nasze programy będą działały we właściwy sposób. Za ich pomocą będziemy realizować działania matematyczne, manipulować danymi tekstowymi oraz datami. Do funkcji w VBA odwołujemy się w standardowy sposób poprzez wpisanie nazwy funkcji, argumentów oraz nawiasów: NAZWA_FUNKCJI(argumenty). Funkcje VBA możemy podzielić na następujące grupy:

Za pomocą funkcji Arkusza Excel możemy odwołać się do dowolnej funkcji używanej w Arkuszu. Nazwy funkcji wyświetlają się nam w języku angielskim. Do funkcji Arkusza Excel odwołujemy się po wpisaniu instrukcji Application.WorksheetFunction.NAZWA_FUNKCJI.

Kurs Excel VBA - Funkcje VBA
Kurs Excel VBA – Funkcje VBA

Funkcje VBA, podobnie jak w arkuszu danych możemy ze sobą łączyć używając następującej składni: funkcja_2(funkcja_1(argumenty funkcji_1)). Tak więc wynik funkcji_1 jest jednocześnie argumentem funkcji_2. Są to tzw. funkcje zagnieżdżone. Wszelkie potrzebne nam funkcje poznamy w kolejnych rozdziałach naszego kursu.

2. Przykład wykorzystania funkcji

Na początek spróbujmy napisać krótkie makro z wykorzystaniem InputBox i MsgBox, które wyciągnie pierwiastek kwadratowy z wprowadzonej przez nas wartości. Stosujemy w tym celu funkcję Sqr().

Sub FunExample()

Dim intValue As Integer
intValue = InputBox("Wprowadź wartość")
MsgBox (Sqr(intValue))

End Sub

W kolejnym kroku zaokrąglijmy naszą wartość do 2 miejsc po przecinku stosując w tym celu funkcję Round(). Nawiasy obydwu funkcji oczywiście muszą być zamknięte:

Sub FunExample()

Dim intValue As Integer
intValue = InputBox("Wprowadź wartość")
MsgBox (Round(Sqr(intValue)))

End Sub

W kolejnym przykładzie skorzystamy z funkcji znakowej. Podobnie jak w poprzednim przykładzie wykorzystajmy elementy InputBox i MsgBox. Naszym celem jest przerobienie wprowadzonej danej tekstowej na tekst pisany wielkimi literami. Wykorzystamy w tym celu funkcję Ucase().

Sub FunExample()

Dim intValue As String
strValue = InputBox("Wprowadź tekst")
MsgBox (UCase(strValue))

End Sub

W kolejnych rozdziałach kursu poznamy po kolei wszystkie poznane nam kategorie funkcji w Excel VBA.

3. Zadania (Wynik możesz zapisać w komentarzu)

3.1 Przerób funkcję z punktu 2. Spraw, by wynik działania wyświetlił się w komórce B2 Arkusza3.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

9 komentarzy “Funkcje w Excel VBA”