Operatori programmā Excel VBA

Satura rādītājs:

Anonim

Pazīmes un atslēgvārdus, ko izmantojam, lai darbotos mainīgajos VBA, sauc par VBA operatoriem. Piemēram, rindās zem rindām =, +,>, & ir operatori.

sub Examp () a = 12 b = 10 c = a+b atkļūdošana. nospiedums "a un b summa ir" & c end sub 

Jebkurā programmēšanas valodā ir pieci operatoru veidi, tātad VBA
1. Uzdevumu operators
2. Aritmētiskais operators
3. Salīdzināšanas operators
4. Loģiskais operators
5. Saskaņošanas operators

Apskatīsim katru operatora veidu programmā Excel VBA.

1. Uzdevumu operators (=)

Šis ir pirmais operators, kuru izmantosit jebkurā programmēšanas valodā. VBA to izmanto, lai piešķirtu vērtības mainīgajiem. Tas ir "=" (vienāds ar).

Mēs izmantojam šo operatoru, lai piešķirtu vērtības mainīgajiem Excel VBA. To izmanto arī kā salīdzināšanas operatoru VBA. Mēs par to runāsim vēlāk šajā apmācībā.

Viens vienkāršs piemērs ir

apakštests () a = 10 diapazons ("A1"). vērtība = beigu apakš 

Iepriekš minētajā piemērā mēs vispirms izmantojam piešķiršanas operatoru "=", lai piešķirtu vērtību mainīgajam "a", un pēc tam ar operatoru "=", lai piešķirtu "a" vērtību diapazona vērtībai ("A1").

2. Aritmētiskie operatori

Aritmētiskie operatori ir tie paši operatori, kurus mēs izmantojam kopš bērnības, lai veiktu vienkāršus aprēķinus. Programmā Excel VBA šie operatori tiek izmantoti, lai aprēķinātu mainīgos un skaitļus. Viņi ir:

(+) Aritmētiskais papildinājums:Šo operatoru izmanto, lai pievienotu divus vai vairākus skaitļus vai divu vai vairāku mainīgo vērtības. Tālāk esošās rindiņas apkopo abu mainīgo vērtības un izdrukā to šūnā "A1".

Apakštests () a = 10 b = 12 diapazons ("A1"). Vērtība =a+b Beigt apakš

A1 būs 22. Šis operators darbojas arī kā savienošanas operators. Ja abiem, a un b būs virkņu vērtības, tad + operators darbosies kā saplūšanas operators. Mēs redzēsim, kā, vēlāk rakstā.

(-) Aritmētiskā atņemšana:Šo operatoru izmanto, lai atņemtu vienu vērtību no citas mainīgo vērtības. Zemāk esošā rinda atņem a vērtību no b un izdrukā to šūnā "A1".

Apakštests () a = 10 b = 12 diapazons ("A1"). Vērtība =ba Beigt apakš

A1 uz lapas būs 2.

(*) Aritmētiskā reizināšana:Šo operatoru izmanto, lai reizinātu vai iegūtu reizinājumu no diviem vai vairākiem skaitļiem vai divu vai vairāku mainīgo lielumiem. Zemāk esošās rindas reizina abu mainīgo vērtības un izdrukā to šūnā "A1".

Apakštests () a = 10 b = 12 diapazons ("A1"). Vērtība =a*b Beigt apakš

Šūnas A1 vērtība būs 120.

(/) Aritmētikas nodaļa:Šo operatoru izmanto, dalot vienu vērtību no citas. Zemāk esošā rinda dala vērtību b ar mainīgo a un izdrukā to šūnā "A1".

Apakštests () a = 10 b = 12 diapazons ("A1"). Vērtība =ba Beigt apakš

Šūnas A1 vērtība būs 1,2.

(Mod) Aritmētikas atlikuma operators VBA: Lai gan lielākā daļa PL izmanto % (moduli), lai iegūtu pārējo, VBA mēs izmantojam atslēgvārdu Mod. Šis operators tiek izmantots, lai saņemtu atgādinājumu pēc vienas vērtības dalīšanas ar citu. Zemāk esošā rinda dala vērtību b ar mainīgo a un izdrukā atgādinājuma vērtību šūnā A1.

Apakštests () a = 10 b = 4 Diapazons ("A1"). Vērtība =a Modulis b Beigt apakš 

Šūnai A1 būs vērtība 2.

(^) Eksponenciālais aritmētiskais:Šo operatoru izmanto, lai vienas vērtības eksponentu pārnestu uz citu. Tālāk esošās rindas dod mums vērtību 3 eksponenciāli 4.

Apakštests () a = 3 b = 4 Diapazons ("A1"). Vērtība =a^b Beigt apakš

Šūnas A1 vērtība būs 81 (3x3x3x3).

Šie VBA operatori ievēro BODMAS noteikumu. VBA ir tikai 6 aritmētiskie operatori. Ir daži operatori, kas darbojas kā divu veidu operatori, piemēram, +. Jūs iepazīsities ar viņiem, apmeklējot šo apmācību.

3. Salīdzināšanas operatori

Ja mēs vēlamies salīdzināt divas vērtības VBA, mēs izmantojam salīdzināšanas operatorus. Salīdzināšanas operatora rezultāts vienmēr ir Būla. Ja apgalvojums ir patiess, rezultāts ir TRUE. Ja paziņojums ir nepatiess, vērtība ir False. Šos operatorus bieži izmanto lēmumu pieņemšanā VBA. Apskatīsim, kas tie ir:

(=) Vienāds:Jā, zīme = (vienāds ar) tiek izmantota arī kā salīdzināšanas operators VBA. Ja mēs vēlamies pārbaudīt, vai abi mainīgie ir vienādi, mēs izmantojam šo salīdzināšanas operatoru.

Apakšpārbaude () a = 3 b = 4 Ja a = b, tad 'Tas atgriezīs nepatiesu MsgBox "A un b ir vienādi." 'tas netiks izpildīts. Citādi MsgBox "A un b nav vienādi" End IF End Sub

Iepriekš minētajā piemērā mēs izmantojam paziņojumu If un pārbaudām, vai a un b vērtības ir vienādas. Tie acīmredzami nav. Tādējādi cits paziņojums tiek izdrukāts.

To var pārbaudīt, vienkārši izmantojot paziņojumu.

a = 3 b = 4 atkļūdošana. izdruka a = b

Tūlītējā logā tiks izdrukāts False.

(<) Mazāk nekā:To izmanto, lai pārbaudītu, vai kreisā vērtība ir mazāka par labo vērtību.

Apakštests () a = 3 b = 4 Ja a

Iepriekš minētajā piemērā mēs pārbaudām, vai a vērtība ir mazāka par b. Tā kā tas ir taisnība, paziņojums if tiek izpildīts, bet cits nē.

To var pārbaudīt, vienkārši izmantojot paziņojumu.

a = 3 b = 4 atkļūdošana. izdrukāt a<>

Tūlītējā logā tiks izdrukāts True.

(<=) Mazāk vai vienāds ar:To izmanto, lai pārbaudītu, vai kreisā vērtība ir mazāka vai vienāda ar labo vērtību.

Apakštests () a = 4 b = 4 Ja a <= b, tad tas atgriež patieso MsgBox "A a ir mazāks vai vienāds ar b." 'tas tiks izpildīts. Cits ziņojums "A nav vienāds ar b vai mazāks par to." 'tas netiks izpildīts. Beigt, ja beigu apakš

Iepriekš minētajā piemērā mēs pārbaudām, vai a vērtība ir mazāka par b. Tā kā tas ir taisnība, paziņojums If tiek izpildīts, bet cits nē.

To var pārbaudīt, vienkārši izmantojot paziņojumu.

a = 4 b = 4 atkļūdošana. izdrukāt a <-b

Tūlītējā logā tiks izdrukāts True.

(>) Lielāks par:To izmanto, lai pārbaudītu, vai kreisā vērtība ir lielāka par labo vērtību.

Apakšpārbaude () a = 3 b = 4 Ja a> b, tad 'Tas atgriezīs nepatiesu MsgBox "A a ir lielāks par b." 'Tas netiks izpildīts. Cits ziņojums "A nav lielāks par b". 'Tas tiks izpildīts. Beigt, ja beigu apakš

Iepriekš minētajā piemērā mēs pārbaudām, vai a vērtība ir lielāka par b. Tā kā tas ir nepatiess, paziņojums if netiks izpildīts un citādi.

To var pārbaudīt, vienkārši izmantojot paziņojumu.

a = 3 b = 4 atkļūdošana. izdrukāt a> b

Tūlītējā logā tiks izdrukāts False.

(> =) Lielāks par:To izmanto, lai pārbaudītu, vai kreisā vērtība ir lielāka vai vienāda ar labo vērtību.

Apakštests () a = 3 b = 4 Ja a> = b, tad tas atgriezīs False MsgBox "A a ir lielāks vai vienāds ar b." 'Tas netiks izpildīts. Cits ziņojums "A nav lielāks par b vai vienāds ar to." 'Tas tiks izpildīts. Beigt IF

Iepriekš minētajā piemērā mēs pārbaudām, vai a vērtība ir lielāka vai vienāda ar b. Tā kā tas ir nepatiess, paziņojums if netiks izpildīts un citādi.

To var pārbaudīt, vienkārši izmantojot paziņojumu.

a = 3 b = 4 atkļūdošana. izdruka a> = b

Tūlītējā logā tiks izdrukāts False.

() Nav vienāds ar:To izmanto, lai pārbaudītu, vai kreisā vērtība nav vienāda ar labo vērtību.

Apakštests () a = 3 b = 4 Ja ab tad 'Tas atgriezīs True MsgBox "A a nav vienāds ar b",' Tas tiks izpildīts. Cits ziņojums "A un b ir vienādi." 'Tas netiks izpildīts. Beigt, ja beigu apakš

Iepriekš minētajā piemērā mēs pārbaudām, vai a vērtība ir nav vienāds ar b. Tā kā tas ir taisnība, paziņojums If tiks izpildīts, bet cits ne.

To var pārbaudīt, vienkārši izmantojot paziņojumu.

a = 3 b = 4 atkļūdošana.print ab

Tūlītējā logā tiks izdrukāts True.

Iepriekš minētos sešus operatorus sauc par salīdzināšanas operatoriem, jo ​​mēs tos izmantojam, lai salīdzinātu divas vērtības vai mainīgos. Jūs tos daudz izmantosit VBA, lai pieņemtu lēmumus VBA.

4. Loģiskie operatori

Loģiskos operatorus izmanto, lai veiktu loģiskas darbības ar vienu vai vairākiem mainīgajiem. Šādu darbību rezultāts vienmēr ir TRUE vai FALSE. Loģiskie operatori bieži (ne vienmēr) tiek izmantoti, lai pārbaudītu vairāk nekā vienu nosacījumu.

Zemāk ir loģiskie operatori, kurus izmantojam VBA:

VBA UN operators (un vai *): Operators VBA UN tiek izmantots, lai nodrošinātu, ka kreisajā un labajā pusē esošie nosacījumi ir patiesi. Ja kāds no nosacījumiem ir nepatiess, visa paziņojuma rezultāts būs False. UN operācijām mēs izmantojam atslēgvārdu And vai zīmi * (zvaigznīte).

Pārbaudiet zemāk esošo paziņojumu:

Apakšpārbaude () a = 10 b = 20 Ja a <15 un b <15 Tad MsgBox "a un b abi ir mazāki par 15." 'Tas netiek izpildīts. Cits ziņojums "A vai b ir lielāks vai vienāds ar 15." 'Tas tiek izpildīts. Beigt Ja beigt Sub 

Kad mēs izpildām iepriekš minēto fragmentu, otrais, ja paziņojums netiek izpildīts. Jo pirmais apgalvojums kreisajā pusē ir patiess, bet paziņojums labajā pusē ir nepatiess. Tādējādi viss paziņojums atgriež nepatiesu.

Lielākajā daļā valodu simbols & tiek izmantots kā AND operators, bet ne VBA. VBA varat izmantot reizināšanas operatoru * (zvaigznīte) kā AND operatoru, lai pārliecinātos, ka abi nosacījumi ir patiesi.

Iepriekš minētajā piemērā varat izmantot tālāk norādīto paziņojumu, lai to izdarītu.

Ja (a <15) * (b <15) Tad

Lai atdalītu nosacījuma paziņojumus, jāizmanto iekavas. Pretējā gadījumā paziņojumi atbilst BODMAS noteikumam, un rezultāts būs neprecīzs.

1. jautājums: Kāds būs zemāk esošā paziņojuma rezultāts? Paziņojiet man tālāk komentāru sadaļā:

atkļūdošana.druka a10 UN a = (b/2) UN a<>

Ja a vērtība ir 15 un b ir 30. Pierakstiet komentāru sadaļā zemāk.

VBA VAI operators (vai +): Operators OR tiek izmantots, ja mēs vēlamies nodrošināt, lai nosacījums Kreisais būtu TRUE vai Labais nosacījums būtu TRUE. Ja kāds no diviem nosacījumiem ir patiess, rezultāts būs patiess. Mēs izmantojam atslēgvārdu starp diviem Būla paziņojumiem. Darbībai VAI varat izmantot arī + (plus) zīmi. Vienkārši pārliecinieties, ka lietojat iekavas pareizi, lai paziņojumi būtu skaidri, lietojot + zīmi.

Pārbaudiet zemāk esošo kodu:

Apakšpārbaude () a = 10 b = 20 Ja a <15 vai b <15 Tad MsgBox "A vai b ir mazāks par 15." 'Tas tiek izpildīts. Cits ziņojums "Ne a, ne b nav mazāks par 15." 'Tas netiek izpildīts. Beigt Ja beigt Sub

Izpildot iepriekš minēto kodu, tiek parādīts pirmais ziņojums un otrais ziņojums tiek izlaists. Jo a ir mazāks par 15 un b nav. Lai rezultāts būtu patiess, ir vajadzīgs tikai viens nosacījums, lai ar operatoru VAI būtu patiess.

Jūs rakstāt paziņojumu šādi:

Ja (a <15) + (b <15) Tad

2. jautājums: Kāds būs zemāk esošā paziņojuma rezultāts? Paziņojiet man tālāk komentāru sadaļā:

atkļūdošana.druka a10 Vai a = (b/2) vai a<>

Ja a vērtība ir 10 un b ir 5. Pierakstiet komentāru sadaļā zemāk.

VBA NAV operators (nav): Operators Not izmanto, lai apvērstu Būla vērtību. Citiem vārdiem sakot, paziņojums ar operatoru Not atgriež patiesu tikai tad, ja paziņojums pirms tā ir nepatiess. Piemēram, ja pirms patiesa paziņojuma izmantojat atslēgvārdu Not, tas radīs nepatiesu un otrādi. VBA mēs izmantojam atslēgvārdu, lai pārbaudītu, vai kaut kas nav tas, kas ir patiess vai nepatiess (?).

Apakšpārbaude () a = 10 b = 10 Ja nē a = b Tad MsgBox "a un b nav vienādi." Citādi MsgBox "a un b abi ir vienādi." 'Tas tiek izpildīts End If End Sub

Iepriekš minētajā kodā, paziņojumsNav a = batgriezīs nepatiesu. Sākotnēji a = b ir taisnība, bet, kā mēs to izmantojām pirms tam, rezultāts tiek apgriezts un paziņojums pārvēršas par nepatiesu. Iepriekš minētajā piemērā mēs esam izmantojuši vienīgos apgalvojumus pirms tā. Pirms operatora Not var būt tik daudz paziņojumu, cik vēlaties. Vienkārši pievienojiet tos iekavās.

3. jautājums: Kāds būs zemāk esošā paziņojuma rezultāts? Paziņojiet man tālāk komentāru sadaļā:

atkļūdot. izdrukāt a10 vai nē (a = (b/2) * a<>

Ja a vērtība ir 10 un b ir 5. Pierakstiet komentāru sadaļā zemāk.

5. Saskaņošanas operatori (& vai +)

Šie operatori tiek izmantoti virkņu savienošanai. Simbols & tiek izmantots tekstu savienošanai. Ieteicamais operators ir virkņu savienošana. Tomēr, lai savienotu, varat izmantot arī + zīmi.

Plus zīme tikai savieno divus mainīgos, ja abi ir virknes. Ja kāda no virknēm nav virkne, zīme + darbosies kā papildinājuma operators.

Skatiet zemāk esošo kodu:

Apakštests () a = "Exceltip" b = "is number" c = 1 d = 2 Debug.print a & b & c 'tas tiks izdrukāts "Exceltip is number 1" Debug.print a + b & c & d' tiks izdrukāts "Exceltip ir numurs 12" Atkļūdot. izdrukāt a + b + c "tā būs kļūda. Beigas apakšdaļa

Iepriekš minētajā kodā pirmās divas rindas darbosies lieliski. Trešajā rindā radīsies kļūda, jo mēs mēģinām pievienot tekstu ar cipariem. Lai sasaistītu skaitļus, mēs vienmēr izmantojam & (amp).

Daudzfunkcionāli operatori VBA

Izmantojot iepriekš minētos piemērus, jums noteikti ir jāapgūst, ka ir daudz operatoru, kuri dažādās situācijās strādā atšķirīgi.

Zīme + darbojas kā papildināšanas operators, strādājot ar cipariem. Strādājot ar Būla vērtībām, plus zīme darbojas kā Vai operators VBA. Ja to izmanto ar virkņu vērtībām, plus operators darbojas kā sasaistīšanas operators. Tālāk norādītās rindas ir derīgas:

Atkļūdošana. Drukāt 10 + 20 'izdrukas 30. + darbojas kā pievienošanas operators. Debug.Print (1020) izdrukas True. + darbojas kā operators. Atkļūdot. Izdrukāt "10" + "20" 'Izdrukā 1020. Zīme + darbojas kā saplūšanas operators. 

Zvaigznīte (*) zīme darbojas kā reizināšanas operators, ja operandi ir skaitliski. Ja operandi ir Būla, zvaigznīte darbojas kā Un Operators.

Zemāk esošās koda rindas darbojas lieliski.

Atkļūdošana. Drukāt 10 * 20 'izdrukas 200. * darbojas kā reizināšanas operators. Debug.Print (1020) 'izdrukas False. Zīme + darbojas kā operators. 

Tātad, jā, puiši, tas viss attiecas uz operatoriem VBA. Es ceru, ka tas bija noderīgi. Ja jums ir šaubas par VBA operatoriem, jautājiet komentāru sadaļā zemāk.

Ja ElseIf paziņojums VBA | Ja If ElseIf, nākamais nosacījums tiek pārbaudīts tikai tad, kad iepriekšējais nosacījums nokrīt. Kad nosacījums ir saskaņots, šī bloka kods tiek izpildīts un vadīkla iziet no bloka If.

Excel VBA mainīgā darbības joma | Arī VBA ir darbības jomas specifikatori. Šos darbības jomas specifikatorus var izmantot, lai programmā Excel VBA iestatītu mainīgā redzamību/apjomu.

VBA paziņojums par atsevišķu gadījumu | Izlases gadījuma paziņojumi ir noderīgi, ja jums ir pārāk daudz pārbaudāmo nosacījumu. Tie lieliski aizstāj vairākus If ElseIf paziņojumus.

Cilpas izmantošana VBA programmā Microsoft Excel | VBA cilpas ļauj mums atkārtoti veikt līdzīgu uzdevumu, neatkārtojot kodu. Programmā Excel VBA ir 3 cilpu veidi.

ByRef un ByVal argumenti | Ja arguments tiek nodots kā ByRef arguments citai apakšgrupai vai funkcijai, tiek nosūtīta faktiskā mainīgā atsauce. Visas izmaiņas, kas veiktas mainīgā kopijā, tiks atspoguļotas sākotnējā argumentā.

Parādīt ziņojumu Excel VBA statusa joslā Excel statusa joslu var izmantot kā koda monitoru. Ja jūsu VBA kods ir garš un veicat vairākus uzdevumus, izmantojot VBA, jūs bieži atspējojat ekrāna atjaunināšanu, lai neredzētu ekrāna mirgošanu

Izslēdziet brīdinājuma ziņojumus, izmantojot VBA programmā Microsoft Excel 2016 | Šis kods ne tikai atspējo VBA brīdinājumus, bet arī palielina koda laika efektivitāti. Redzēsim, kā.

Populāri raksti:

50 Excel saīsnes, lai palielinātu produktivitāti | Ātrāk izpildiet savu uzdevumu. Šie 50 īsceļi ļaus jums strādāt vēl ātrāk programmā Excel.

Funkcija VLOOKUP programmā Excel | Šī ir viena no visbiežāk izmantotajām un populārākajām Excel funkcijām, kas tiek izmantota, lai meklētu vērtību no dažādiem diapazoniem un lapām.

COUNTIF programmā Excel 2016 | Saskaitiet vērtības ar nosacījumiem, izmantojot šo apbrīnojamo funkciju. Jums nav jāfiltrē dati, lai uzskaitītu noteiktu vērtību. Skaitītāja funkcija ir būtiska, lai sagatavotu informācijas paneli.

Kā lietot SUMIF funkciju programmā Excel | Šī ir vēl viena būtiska informācijas paneļa funkcija. Tas palīdz apkopot vērtības noteiktos apstākļos.