VBA operatori i ugrađene funkcije

Excel VBA izjave

Prilikom pisanja VBA koda u Excelu u svakom se koraku koristi skup ugrađenih operatora. Ovi se operatori dijele na matematičke, nizove, usporedbe i logičke operatore. Zatim ćemo detaljno razmotriti svaku grupu operatora.

Matematički operatori

Glavni VBA matematički operatori navedeni su u donjoj tablici.

Desni stupac tablice prikazuje zadani prioritet operatora bez zagrada. Dodavanjem zagrada izrazu možete promijeniti redoslijed u kojem se izvode VBA naredbe kako želite.

OperatorAkcijskiprioritet

(1 – najviše; 5 – najniže)

^operator stepenovanja1
*operator množenja2
/operater dijeljenja2
Dijeljenje bez ostatka – vraća rezultat dijeljenja dva broja bez ostatka. Na primjer, 74 će vratiti rezultat 13
HrabrostModulo (ostatak) operator – vraća ostatak nakon dijeljenja dva broja. Na primjer, 8 protiv 3 će vratiti rezultat 2.4
+Operator zbrajanja5
-operator oduzimanja5

String Operatori

Osnovni operator niza u Excel VBA je operator ulančavanja & (sjediniti):

OperatorAkcijski
&operator ulančavanja. Na primjer, izraz «A» i «B» će vratiti rezultat AB.

Operatori usporedbe

Operatori usporedbe koriste se za usporedbu dva broja ili niza i vraćanje Booleove vrijednosti tipa Booleova (Istina ili laž). Glavni operatori Excel VBA za usporedbu navedeni su u ovoj tablici:

OperatorAkcijski
=Jednako
<>Nejednak
<Manje
>Больше
<=Manje ili jednako
>=Veće ili jednako

logički operatori

Logički operatori, poput operatora usporedbe, vraćaju booleovu vrijednost tipa Booleova (Istina ili laž). Glavni logički operatori programa Excel VBA navedeni su u tablici ispod:

OperatorAkcijski
Ioperacija konjunkcije, logički operator И. Na primjer, izraz A i B će se vratiti Pravi, Ako A и B oboje su jednaki Pravi, inače vratiti Lažan.
OrOperacija disjunkcije, logički operator OR. Na primjer, izraz A ili B će se vratiti Pravi, Ako A or B su jednaki Pravi, i vratit će se Lažan, Ako A и B oboje su jednaki Lažan.
NeOperacija negacije, logički operator NE. Na primjer, izraz Ne A će se vratiti Pravi, Ako A jednako Lažan, ili povratak Lažan, Ako A jednako Pravi.

Gornja tablica ne navodi sve logičke operatore dostupne u VBA. Potpuni popis logičkih operatora može se pronaći u Visual Basic Developer Center.

Ugrađene funkcije

Postoje mnoge ugrađene funkcije dostupne u VBA koje se mogu koristiti prilikom pisanja koda. U nastavku su navedeni neki od najčešće korištenih:

funkcijaAkcijski
KormilarVraća apsolutnu vrijednost zadanog broja.

Primjer:

  • Trbušnjaci (-20) vraća vrijednost 20;
  • Trbušnjaci (20) vraća vrijednost 20.
PRIJE KRISTAVraća ANSI znak koji odgovara numeričkoj vrijednosti parametra.

Primjer:

  • Chr (10) vraća prijelom retka;
  • Chr (97) vraća znak a.
DatumVraća trenutni sistemski datum.
Dodavanje datumaDodaje određeni vremenski interval zadanom datumu. Sintaksa funkcije:

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

Gdje je argument interval određuje vrstu vremenskog intervala dodanog zadanom podaci u iznosu navedenom u argumentu broj.

Argument interval može uzeti jednu od sljedećih vrijednosti:

IntervalJoš malo brojeva
yyyygodina
qčetvrtina
mmjesec
ydan u godini
ddan
wdan u tjednu
wwtjedan
hsat
nminuta
sdrugi

Primjer:

  • DateAdd(«d», 32, «01.») dodaje 32 dana na datum 01/01/2015 i tako vraća datum 02/02/2015.
  • DateAdd(«ww», 36, «01.») dodaje 36 tjedana na datum 01. i vraća datum 01.
DateDiffIzračunava broj navedenih vremenskih intervala između dva dana.

Primjer:

  • DateDiff(«d», «01/01/2015», «02/02/2015») izračunava broj dana između 01/01/2015 i 02/02/2015, vraća 32.
  • DateDiff(«ww», «01/01/2015», «03/03/2016») izračunava broj tjedana između 01. i 01., vraća 2015.
DanVraća cijeli broj koji odgovara danu u mjesecu zadanog datuma.

Primjer: Dan («29.») vraća broj 29.

satVraća cijeli broj koji odgovara broju sati u danom vremenu.

Primjer: Sat («22:45:00») vraća broj 22.

InStrUzima cijeli broj i dva niza kao argumente. Vraća mjesto pojavljivanja drugog niza unutar prvog, započinjući pretraživanje na položaju zadanom cijelim brojem.

Primjer:

  • InStr(1, “Ovdje je riječ za pretraživanje”, “riječ”) vraća broj 13.
  • InStr(14, “Ovdje je riječ za pretraživanje, a ovdje je još jedna riječ za pretraživanje”, “riječ”) vraća broj 38.

Bilješka: Argument broja možda nije naveden, u kojem slučaju pretraživanje počinje od prvog znaka niza navedenog u drugom argumentu funkcije.

IntVraća cijeli broj zadanog broja.

Primjer: Int (5.79) vraća rezultat 5.

IsdatePovratak Praviako je dana vrijednost datum, ili Lažan – ako datum nije.

Primjer:

  • IsDate(«01.») vraća Pravi;
  • IsDatum (100) vraća Lažan.
IsErrorPovratak Praviako je navedena vrijednost pogreška, ili Lažan – ako nije greška.
NedostajeNaziv opcijskog argumenta procedure prosljeđuje se kao argument funkciji. Nedostaje vraća Praviako nije proslijeđena vrijednost za dotični argument procedure.
JeNumericPovratak Praviako se dana vrijednost može tretirati kao broj, u protivnom vraća Lažan.
LijevoVraća navedeni broj znakova od početka zadanog niza. Sintaksa funkcije je ovakva:

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

gdje linija je izvorni niz, i dužina je broj znakova koje treba vratiti, računajući od početka niza.

Primjer:

  • Lijevo ("abvgdejziklmn", 4) vraća niz “abcg”;
  • Lijevo ("abvgdejziklmn", 1) vraća niz "a".
LenVraća broj znakova u nizu.

Primjer: Len ("abcdej") vraća broj 7.

MjesecVraća cijeli broj koji odgovara mjesecu zadanog datuma.

Primjer: Mjesec («29.») vraća vrijednost 1.

SrednjiVraća navedeni broj znakova iz sredine zadanog niza. Sintaksa funkcije:

Sredina (linija, početak, dužina)

gdje linija je izvorni niz početak – položaj početka niza koji se izdvaja, dužina je broj znakova koje treba izdvojiti.

Primjer:

  • Sredina ("abvgdejziklmn", 4, 5) vraća niz "gdje";
  • Sredina ("abvgdejziklmn", 10, 2) vraća niz “cl”.
MinutaVraća cijeli broj koji odgovara broju minuta u zadanom vremenu. Primjer: Minuta («22:45:15») vraća vrijednost 45.
SadaVraća trenutni sistemski datum i vrijeme.
DesnoVraća navedeni broj znakova s ​​kraja zadanog niza. Sintaksa funkcije:

Pravo(linija, dužina)

Gdje linija je izvorni niz, i dužina je broj znakova koje treba izdvojiti, računajući od kraja zadanog niza.

Primjer:

  • Desno («abvgdezhziklmn», 4) vraća niz “clmn”;
  • Desno («abvgdezhziklmn», 1) vraća niz "n".
DrugoVraća cijeli broj koji odgovara broju sekundi u zadanom vremenu.

Primjer: Drugi («22:45:15») vraća vrijednost 15.

sqrVraća kvadratni korijen numeričke vrijednosti proslijeđene u argumentu.

Primjer:

  • Sqr (4) vraća vrijednost 2;
  • Sqr (16) vraća vrijednost 4.
VrijemeVraća trenutno vrijeme sustava.
UboundVraća gornji indeks navedene dimenzije polja.

Bilješka: Za višedimenzionalne nizove, izborni argument može biti indeks koje dimenzije treba vratiti. Ako nije navedeno, zadana vrijednost je 1.

godinaVraća cijeli broj koji odgovara godini zadanog datuma. Primjer: Godina («29/01/2015») vraća vrijednost 2015.

Ovaj popis uključuje samo izbor najčešće korištenih ugrađenih funkcija programa Excel Visual Basic. Iscrpan popis VBA funkcija dostupnih za korištenje u Excel makronaredbama može se pronaći u Visual Basic Developer Center.

Ostavi odgovor