AvaldisedAvaldiste struktuur ja liigidAvaldis määrab, mis tehted (operatsioonid) millises järjekorras väärtuse leidmiseks täita. Üldjuhul koosneb avaldis operandidest, tehtesümbolitest ja ümarsulgudest. Erijuhul võib avaldis koosneda ainult ühest operandist. Operandideks võivad olla konstandid, lihtmuutujad, objektide omadused, struktuurmuutujate (massiivid, kirjed) elemendid ja funktsiooniviidad. Nimeta konstandi väärtus (arv, string jm) esitatakse otse avaldises. Nimega konstant deklareeritakse lausega Const ning avaldises kasutatakse selle nime. Lihtmuutujad esitatakse samuti nimede abil, struktuurmuutujate elementide esitus sõltub andmekogumiku liigist (massiiv, kirje jmt). Funktsiooniviide esitatakse kujul nimi ( argument { , argument } ) kus nimi on VBA sisefunktsiooni või kasutajafunktsiooni nimi. VBA funktsioonide nimed kuuluvad reserveeritud võtmesõnade hulka ning muuks otstarbeks neid kasutada ei tohi. Funktsiooniviites esinev argument näitab funktsioonile edastatavat väärtust. Argumendid võivad olla esitatud avaldiste abil. Argumentide arv, tüüp ja esitusjärjekord sõltuvad konkreetsest funktsioonist.
Üldjuhul võivad avaldises esineda tehted kõikidest
liikidest. Avaldise väärtuse leidmisel arvestatakse tehete
prioriteete liikide vahel ning aritmeetika- ja loogikatehete puhul ka
liigi sees. Tehete liigid on siin toodud prioriteetide kahanemise järjekorras.
Aritmeetika- ja loogikatehete prioriteedid kahanevad vasakult paremale.
Tehete järjekorra muutmiseks võib kasutada ümarsulge. Sulgudes asuva avaldise väärtus leitakse eraldi. Ümarsulgudes esitatakse ka funktsiooniviidete argumendid. Sõltuvalt andmete liigist ning kasutatavatest tehetest ja leitava väärtuse liigist võib avaldised jagada järgmistesse rühmadesse: arvavaldised , stringavaldised ja loogikaavaldised . Arvavaldised ja matemaatikafunktsioonidArvavaldiste operandide väärtusteks on arvud ning neis kasutatakse aritmeetikatehteid ning funktsioone, mis tagastavad arvväärtusi. Aritmeetikatehted ja nende prioriteedid on järgmised.
Tehete prioriteetide rakendamise näiteid
Võrreldes Exceliga on VBAs suhteliselt väike arv matemaatikafunktsioone. Puuduvad näiteks sellised sageli kasutatavad funktsioonid nagu kümnendlogaritm, arkussiinus ja arkuskoosinus. Stringavaldised ja funktsioonidStringavaldiste operandide väärtuseks on stringid, neis võib
kasutada stringitehet ja stringifunktsioone. Näiteid Operatsioonideks stringidega kasutatakse ka mõningaid erilauseid:
Võrdlused ja loogikaavaldisedVõrdlus on loogikaavaldise erijuhtut, selle kuju on järgmine:
tehtesümbolid on järgmised: = , <> , < , <= , > , >= Avaldised: avaldis1 ja avaldis2, on arv- või
stringavaldised. Ühes võrdluses esinevad avaldised peavad
kuuluma samasse liiki. Võrdluste näiteid x <= 0, b * b - 4 * a * c < 0, x^2+ y^2 > r^2, Ucase (vastus) = "EI" NB! Stringide võrdlemisel eristatakse suur- ja väiketähti! Loogikaavaldise üldkuju on järgmine:
Siin on avaldis võrdlus või loogikaavaldis ja LTS loogikatehte sümbol. Peamised loogikatehted on Or, And ja Not. Nende tähendused on Or - või. Tehte a Or b väärtus on tõene (True), kui vähemalt ühe operandi väärtus on tõene, vastupidisel juhul on tulem väär (False). And - ja. Tehte a And b tulem on tõene (True) ainult siis, kui mõlema operandi väärtused on tõesed, vastupidisel juhul on tehte tulem väär (False). Not - mitte. Tehte Not a tulem on tõene (True) siis, kui a väärtus on väär (False) ja väär (False) vastupidisel juhul. Loogikaavaldiste näiteid
|