VBA operatori un iebūvētās funkcijas

Excel VBA paziņojumi

Rakstot VBA kodu programmā Excel, katrā solī tiek izmantots iebūvēto operatoru komplekts. Šie operatori ir sadalīti matemātiskajos, virknes, salīdzināšanas un loģiskajos operatoros. Tālāk mēs detalizēti aplūkosim katru operatoru grupu.

Matemātiskie operatori

Galvenie VBA matemātikas operatori ir norādīti zemāk esošajā tabulā.

Tabulas labajā slejā ir norādīta noklusējuma operatora prioritāte bez iekavām. Pievienojot izteiksmei iekavas, varat mainīt secību, kādā VBA priekšraksti tiek izpildīti, kā vēlaties.

operatorsDarbībaprioritāte

(1 — augstākais; 5 — zemākais)

^kāpināšanas operators1
*reizināšanas operators2
/nodaļas operators2
Dalīšana bez atlikuma – atgriež divu skaitļu dalīšanas rezultātu bez atlikuma. Piemēram, 74 atgriezīs rezultātu 13
DrosmeModulo (atlikuma) operators – atgriež atlikumu pēc divu skaitļu dalīšanas. Piemēram, 8 pret 3 atgriezīs rezultātu 2.4
+Papildinājuma operators5
Sākot noatņemšanas operators5

Stīgu operatori

Pamata virknes operators programmā Excel VBA ir savienošanas operators & (apvienot):

operatorsDarbība
&sasaistes operators. Piemēram, izteiksme "A" un "B" atgriezīs rezultātu AB.

Operatoru salīdzinājums

Salīdzināšanas operatori tiek izmantoti, lai salīdzinātu divus skaitļus vai virknes un atgrieztu Būla vērtību Būla (Patiesība vai meli). Galvenie Excel VBA salīdzināšanas operatori ir uzskaitīti šajā tabulā:

operatorsDarbība
=Vienādi
<>Nav vienāds
<Mazāk
>Labāk
<=Mazāks par vai vienāds
>=Lielāks par vai vienāds

loģiskiem operatoriem

Loģiskie operatori, tāpat kā salīdzināšanas operatori, atgriež tipa Būla vērtību Būla (Patiesība vai meli). Galvenie Excel VBA loģiskie operatori ir uzskaitīti zemāk esošajā tabulā:

operatorsDarbība
Unsavienojuma darbība, loģiskais operators И. Piemēram, izteiksme A un B atgriezīsies Patiess, Ja A и B abi ir vienādi Patiess, pretējā gadījumā atgriezieties Nepatiess.
OrDisjunkcijas darbība, loģiskais operators OR. Piemēram, izteiksme A vai B atgriezīsies Patiess, Ja A or B ir vienādi Patiess, un atgriezīsies Nepatiess, Ja A и B abi ir vienādi Nepatiess.
NavNolieguma darbība, loģiskais operators NAV. Piemēram, izteiksme Nevis A atgriezīsies Patiess, Ja A Tāpat Nepatiess, vai atgriezties Nepatiess, Ja A Tāpat Patiess.

Iepriekš esošajā tabulā nav uzskaitīti visi VBA pieejamie loģiskie operatori. Pilns loģisko operatoru saraksts ir atrodams Visual Basic izstrādātāju centrā.

Iebūvētās funkcijas

VBA ir pieejamas daudzas iebūvētas funkcijas, kuras var izmantot, rakstot kodu. Tālāk ir norādīti daži no visbiežāk izmantotajiem:

funkcijaDarbība
AbsAtgriež dotā skaitļa absolūto vērtību.

Piemērs:

  • Abs (-20) atgriež vērtību 20;
  • Abs (20) atgriež vērtību 20.
BCAtgriež ANSI rakstzīmi, kas atbilst parametra skaitliskajai vērtībai.

Piemērs:

  • Chr (10) atgriež rindas pārtraukumu;
  • Chr (97) atgriež raksturu a.
datumsAtgriež pašreizējo sistēmas datumu.
Pievienošanas datumsPievieno norādītajam datumam noteiktu laika intervālu. Funkciju sintakse:

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

Kur ir arguments intervāls nosaka laika intervāla veidu, kas pievienots dotajam dati argumentā norādītajā apmērā skaits.

Arguments intervāls var ņemt vienu no šīm vērtībām:

IntervālsVērtība
gggggads
qceturksnis
mMĒNESĪ
ygada diena
ddiena
wnedēļas diena
wwnedēļa
hstunda
nminūte
sotrais

Piemērs:

  • Pievienošanas datums(«d», 32, «01/01/2015») pievieno 32 dienas datumam 01. un tādējādi atgriež datumu 01.
  • Pievienošanas datums («ww», 36, «01/01/2015») pievieno 36 nedēļas datumam 01/01/2015 un atgriež datumu 09/09/2015.
DateDiffAprēķina norādīto laika intervālu skaitu starp diviem norādītajiem datumiem.

Piemērs:

  • DateDiff(«d», «01/01/2015», «02/02/2015») aprēķina dienu skaitu no 01. līdz 01., atgriež 2015.
  • DateDiff(«ww», «01/01/2015», «03/03/2016») aprēķina nedēļu skaitu no 01. līdz 01., atgriež 2015.
dienaAtgriež veselu skaitli, kas atbilst mēneša dienai norādītajā datumā.

Piemērs: Diena («29/01/2015») atgriež skaitli 29.

stundaAtgriež veselu skaitli, kas atbilst stundu skaitam dotajā laikā.

Piemērs: Stunda («22:45:00») atgriež skaitli 22.

InStrKā argumenti tiek ņemts vesels skaitlis un divas virknes. Atgriež otrās virknes rašanās vietu pirmajā virknē, sākot meklēšanu no pozīcijas, kas norādīta ar veselu skaitli.

Piemērs:

  • InStr(1, "Šeit ir meklēšanas vārds", "vārds") atgriež skaitli 13.
  • InStr(14, "Šeit ir meklēšanas vārds, un šeit ir cits meklēšanas vārds", "vārds") atgriež skaitli 38.

Piezīme: Skaitļa arguments var nebūt norādīts, un tādā gadījumā meklēšana sākas no funkcijas otrajā argumentā norādītās virknes pirmās rakstzīmes.

IntAtgriež dotā skaitļa veselo skaitļa daļu.

Piemērs: Int(5.79) atgriež rezultātu 5.

IsdateAtgriešana Patiessja dotā vērtība ir datums, vai Nepatiess – ja datums nav norādīts.

Piemērs:

  • IsDate («01/01/2015») Atgriež Patiess;
  • IsDate (100) Atgriež Nepatiess.
IsErrorAtgriešana Patiessja dotā vērtība ir kļūda, vai Nepatiess – ja tā nav kļūda.
Ir pazudisNeobligātās procedūras argumenta nosaukums funkcijai tiek nodots kā arguments. Ir pazudis Atgriež Patiessja attiecīgajam procedūras argumentam netika nodota vērtība.
IsNumericAtgriešana Patiessja doto vērtību var uzskatīt par skaitli, pretējā gadījumā atgriež Nepatiess.
kreisaisAtgriež norādīto rakstzīmju skaitu no dotās virknes sākuma. Funkciju sintakse ir šāda:

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

kur līnija ir sākotnējā virkne un garums ir atgriežamo rakstzīmju skaits, skaitot no virknes sākuma.

Piemērs:

  • Pa kreisi (“abvgdejziklmn”, 4) atgriež virkni “abcg”;
  • Pa kreisi (“abvgdejziklmn”, 1) atgriež virkni “a”.
LenAtgriež rakstzīmju skaitu virknē.

Piemērs: Len ("abcdej") atgriež skaitli 7.

MĒNESĪAtgriež veselu skaitli, kas atbilst norādītā datuma mēnesim.

Piemērs: Mēnesis («29/01/2015») atgriež vērtību 1.

VidusAtgriež norādīto rakstzīmju skaitu no dotās virknes vidus. Funkciju sintakse:

Mid(līnija, sākums, garums)

kur līnija ir sākotnējā virkne sākums – izņemamās virknes sākuma pozīcija, garums ir izvelkamo rakstzīmju skaits.

Piemērs:

  • Vidēji (“abvgdejziklmn”, 4, 5) atgriež virkni “kur”;
  • Vidēji (“abvgdejziklmn”, 10, 2) atgriež virkni “cl”.
MinūteAtgriež veselu skaitli, kas atbilst minūšu skaitam dotajā laikā. Piemērs: Minūte («22:45:15») atgriež vērtību 45.
TagadAtgriež pašreizējo sistēmas datumu un laiku.
tiesībasAtgriež norādīto rakstzīmju skaitu no dotās virknes beigām. Funkciju sintakse:

Pa labi(līnija, garums)

Reģions līnija ir sākotnējā virkne un garums ir izņemamo rakstzīmju skaits, skaitot no dotās virknes beigām.

Piemērs:

  • Pa labi («abvgdezhziklmn», 4) atgriež virkni “clmn”;
  • Pa labi («abvgdezhziklmn», 1) atgriež virkni “n”.
OtraisAtgriež veselu skaitli, kas atbilst sekunžu skaitam dotajā laikā.

Piemērs: Otrais («22:45:15») atgriež vērtību 15.

kvAtgriež argumentā nodotās skaitliskās vērtības kvadrātsakni.

Piemērs:

  • kvadrāts (4) atgriež vērtību 2;
  • kvadrāts (16) atgriež vērtību 4.
LaiksAtgriež pašreizējo sistēmas laiku.
UboundAtgriež norādītās masīva dimensijas augšējo indeksu.

Piezīme: Daudzdimensiju masīviem neobligāts arguments var būt indekss, kura dimensija jāatgriež. Ja nav norādīts, noklusējuma vērtība ir 1.

gadsAtgriež veselu skaitli, kas atbilst norādītā datuma gadam. Piemērs: Gads («29/01/2015») atgriež vērtību 2015.

Šajā sarakstā ir iekļauta tikai visbiežāk izmantoto Excel Visual Basic iebūvēto funkciju izlase. Izsmeļošs saraksts ar VBA funkcijām, kas pieejamas lietošanai Excel makro, ir atrodams Visual Basic izstrādātāju centrā.

Atstāj atbildi