Operatory VBA i wbudowane funkcje

Wyciągi Excel VBA

Podczas pisania kodu VBA w Excelu na każdym kroku używany jest zestaw wbudowanych operatorów. Operatory te dzielą się na operatory matematyczne, łańcuchowe, porównania i logiczne. Następnie przyjrzymy się szczegółowo każdej grupie operatorów.

Operatory matematyczne

W poniższej tabeli wymieniono główne operatory matematyczne VBA.

Prawa kolumna tabeli pokazuje domyślny priorytet operatora w przypadku braku nawiasów. Dodając nawiasy do wyrażenia, możesz zmienić kolejność wykonywania instrukcji VBA według własnego uznania.

OperatorDziałaniapriorytet

(1 – najwyższy; 5 – najniższy)

^operator potęgowania1
*operator mnożenia2
/operator dywizji2
Dzielenie bez reszty – zwraca wynik dzielenia dwóch liczb bez reszty. Na przykład, 74 zwróci wynik 13
OdwagaOperator modulo (reszta) – zwraca resztę po podzieleniu dwóch liczb. Na przykład, 8 Przeciw 3 zwróci wynik 2.4
+Operator dodawania5
-operator odejmowania5

Operatory łańcuchowe

Podstawowym operatorem ciągu w Excel VBA jest operator konkatenacji & (łączyć):

OperatorDziałania
&Operator łączenia. Na przykład wyrażenie «A» i «B» zwróci wynik AB.

Operatory porównania

Operatory porównania służą do porównywania dwóch liczb lub ciągów i zwracania wartości logicznej typu Boolean (Prawda czy fałsz). W tej tabeli wymieniono główne operatory porównania Excel VBA:

OperatorDziałania
=Na równi
<>Nie równe
<Mniej
>Больше
<=Mniejsze lub równe
>=Większy bądź równy

operatory logiczne

Operatory logiczne, takie jak operatory porównania, zwracają wartość logiczną typu Boolean (Prawda czy fałsz). W poniższej tabeli wymieniono główne operatory logiczne Excel VBA:

OperatorDziałania
orazoperacja koniunkcyjna, operator logiczny И. Na przykład wyrażenie A i B wróci PrawdziwyJeśli A и B oba są równe Prawdziwy, w przeciwnym razie powrót Fałszywy.
OrOperacja alternatywna, operator logiczny OR. Na przykład wyrażenie A lub B wróci PrawdziwyJeśli A or B są równe Prawdziwyi wróci FałszywyJeśli A и B oba są równe Fałszywy.
NieOperacja negacji, operator logiczny NIE. Na przykład wyrażenie Ani wróci PrawdziwyJeśli A Równie Fałszywy, lub powrót FałszywyJeśli A Równie Prawdziwy.

Powyższa tabela nie zawiera wszystkich operatorów logicznych dostępnych w VBA. Pełną listę operatorów logicznych można znaleźć w Visual Basic Developer Center.

Wbudowane funkcje

W VBA dostępnych jest wiele wbudowanych funkcji, które można wykorzystać podczas pisania kodu. Poniżej wymieniono niektóre z najczęściej używanych:

FunkcjonowaćDziałania
AbsZwraca wartość bezwzględną podanej liczby.

Przykład:

  • Brzuch(-20) zwraca wartość 20;
  • Brzuch(20) zwraca wartość 20.
ChrZwraca znak ANSI odpowiadający wartości liczbowej parametru.

Przykład:

  • Chr(10) zwraca łamanie wiersza;
  • Chr(97) zwraca znak a.
DataZwraca bieżącą datę systemową.
DataDodajDodaje określony przedział czasu do podanej daty. Składnia funkcji:

DateAdd(интервал, число, дата)

Gdzie jest argument? interwał określa rodzaj interwału czasowego dodawanego do podanego dane w wysokości określonej w argumencie numer.

Argument interwał może przyjąć jedną z następujących wartości:

Przedziałwartość
rrrrrok
qkwartał
mmiesiąc
ydzień roku
ddzień
wdzień tygodnia
wwtydzień
hgodzina
nchwila
sDopiero

Przykład:

  • Data dodania(«d», 32, «01») dodaje 32 dni do daty 01 i tym samym zwraca datę 01.
  • DataDodaj(«ww», 36, «01») dodaje 36 tygodni do daty 01 i zwraca datę 01.
DataDiffOblicza liczbę określonych odstępów czasu między dwiema podanymi datami.

Przykład:

  • DateDiff(«d», «01/01/2015», «02/02/2015») oblicza liczbę dni od 01 do 01, zwraca 2015.
  • DateDiff(«ww», «01/01/2015», «03/03/2016») oblicza liczbę tygodni od 01 do 01, zwraca 2015.
DzieńZwraca liczbę całkowitą odpowiadającą dniowi miesiąca w podanym dniu.

Przykład: Dzień(«29») zwraca liczbę 29.

godzinaZwraca liczbę całkowitą odpowiadającą liczbie godzin w podanym czasie.

Przykład: Godzina(«22:45:00») zwraca liczbę 22.

InstrJako argumenty przyjmuje liczbę całkowitą i dwa łańcuchy. Zwraca pozycję wystąpienia drugiego ciągu w ciągu pierwszego, rozpoczynając wyszukiwanie od pozycji określonej przez liczbę całkowitą.

Przykład:

  • InStr(1, „Oto wyszukiwane słowo”, „słowo”) zwraca liczbę 13.
  • InStr(14, „Oto wyszukiwane słowo, a tutaj inne wyszukiwane słowo”, „słowo”) zwraca liczbę 38.

Uwaga: Nie można podać argumentu liczby, w którym to przypadku wyszukiwanie rozpoczyna się od pierwszego znaku ciągu określonego w drugim argumencie funkcji.

IntZwraca część całkowitą podanej liczby.

Przykład: Wewn.(5.79) zwraca wynik 5.

IsdateReturns Prawdziwyjeśli podana wartość jest datą, lub Fałszywy – jeśli data nie jest.

Przykład:

  • JestData(«01») powraca Prawdziwy;
  • Czy data(100) powraca Fałszywy.
Czy błąd?Returns Prawdziwyjeśli podana wartość jest błędem, lub Fałszywy – jeśli to nie jest błąd.
BrakujeNazwa opcjonalnego argumentu procedury jest przekazywana jako argument do funkcji. Brakuje powraca Prawdziwyjeśli nie przekazano żadnej wartości dla danego argumentu procedury.
Czy numeryczneReturns Prawdziwyjeśli podaną wartość można traktować jako liczbę, w przeciwnym razie zwraca Fałszywy.
LewaZwraca określoną liczbę znaków od początku danego ciągu. Składnia funkcji wygląda tak:

Left(строка, длина)

gdzie linia jest oryginalnym ciągiem i długość to liczba znaków do zwrócenia, licząc od początku ciągu.

Przykład:

  • Lewo(„abvgdejziklmn”, 4) zwraca ciąg „abcg”;
  • Lewo(„abvgdejziklmn”, 1) zwraca ciąg „a”.
LenZwraca liczbę znaków w ciągu.

Przykład: Len(„abcdej”) zwraca liczbę 7.

MiesiącZwraca liczbę całkowitą odpowiadającą miesiącowi podanej daty.

Przykład: Miesiąc(«29») zwraca wartość 1.

ŚredniZwraca określoną liczbę znaków ze środka danego ciągu. Składnia funkcji:

Środek(linia, początek, długość)

gdzie linia to oryginalny ciąg początek – pozycja początku wyciąganego ciągu, długość to liczba znaków do wyodrębnienia.

Przykład:

  • Środek(„abvgdejziklmn”, 4, 5) zwraca ciąg „gdzie”;
  • Środek(„abvgdejziklmn”, 10, 2) zwraca ciąg „cl”.
MinutaZwraca liczbę całkowitą odpowiadającą liczbie minut w podanym czasie. Przykład: Minuta(«22:45:15») zwraca wartość 45.
TerazZwraca bieżącą datę i godzinę systemową.
PrawaZwraca określoną liczbę znaków od końca danego ciągu. Składnia funkcji:

Prawidłowy(linia, długość)

Gdzie linia jest oryginalnym ciągiem i długość to liczba znaków do wyodrębnienia, licząc od końca danego ciągu.

Przykład:

  • Prawo(«abvgdezhziklmn», 4) zwraca ciąg „clmn”;
  • Prawo(«abvgdezhziklmn», 1) zwraca ciąg „n”.
drugaZwraca liczbę całkowitą odpowiadającą liczbie sekund w podanym czasie.

Przykład: Drugi(«22:45:15») zwraca wartość 15.

placZwraca pierwiastek kwadratowy z wartości liczbowej przekazanej w argumencie.

Przykład:

  • kwadrat(4) zwraca wartość 2;
  • kwadrat(16) zwraca wartość 4.
CzasZwraca aktualny czas systemowy.
UwiązanyZwraca indeks górny określonego wymiaru tablicy.

Uwaga: W przypadku tablic wielowymiarowych opcjonalnym argumentem może być indeks, którego wymiar ma zostać zwrócony. Jeśli nie określono, wartością domyślną jest 1.

rokZwraca liczbę całkowitą odpowiadającą rokowi podanej daty. Przykład: Rok(«29») zwraca wartość 2015.

Ta lista zawiera tylko wybór najczęściej używanych wbudowanych funkcji programu Excel Visual Basic. Wyczerpującą listę funkcji VBA dostępnych do użycia w makrach programu Excel można znaleźć w Centrum deweloperów Visual Basic.

Dodaj komentarz