VBA JA funktsioon - Kuidas VBA-s loogilist operaatorit kasutada?

Lang L: none (table-of-contents)

Exceli VBA ja funktsioon

AND on nii loogiline funktsioon kui ka loogiline operaator, mis tähendab, et kui kõik selles funktsioonis sätestatud tingimused on täidetud, on tõeline tulemus ainult meil, kui aga mõni tingimus ebaõnnestub, tagastatakse väljund valeks, sisseehitatud JA käsk VBA-s kasutamiseks.

Loodan, et olete läbi vaadanud meie artikli teemadest „VBA OR” ja „VBA IF OR”. See funktsioon on OR-i vastand. Funktsioonis OR vajame, et tulemus oleks tõene, et keegi oleks täidetud loogilistest tingimustest. Kuid funktsioonis AND on see lihtsalt vastupidi. TÕENE tulemuse saamiseks peavad kõik Exceli pakutavad loogilised testid olema täidetud.

Ok, vaadake Exceli funktsiooni AND süntaksit.

(Loogiline test) JA (Loogiline test) JA (Loogiline test)

Eeltoodu põhjal on mul kaks testi tulemust 600st.

Tulemuste veerus pean tulemuseks saama TÕENE, kui mõlema testi tulemus on suurem kui 250.

Vaadake allolevat pilti.

Kui rakendame loogilist funktsiooni JA saime tulemused. Lahtrites C4 ja C5 saime tulemuseks TÕENE, kuna 1. ja 2. testi tulemused on suuremad või võrdsed 250-ga.

Vaadake siin C6 lahtrit. Oleme saanud FALSE, kuigi 2. testi tulemus on võrdne 250. Seda seetõttu, et 1. katses on tulemus vaid 179.

Näited VBA ja funktsiooni kasutamiseks

Näide 1

Näiteks testime siin numbreid, kas 25> = 20 ja 30 <= 31.

1. samm: kuulutage muutuja stringiks.

Kood:

Sub AND_Example1 () Dim K kui stringi lõpp-alam

2. samm: muutujale „k” määrame väärtuse funktsiooni AND rakendades.

Kood:

Sub AND_Example1 () Dim K stringina K = End Sub

3. samm: esitage esimene tingimus kui 25> = 20.

Kood:

Alam AND_näide1 () Dim K kui string K = 25> = 20 Lõpp alam

4. samm: avage nüüd funktsioon AND ja edastage teine ​​loogiline test, st 30 <= 29.

Kood:

Alam AND_Näide1 () Dim K stringina K = 25> = 20 ja 30 <= 29 Lõpp-alam

5. samm: nüüd kuvage muutuja “k” tulemus VBA teatekastis.

Kood:

Alam AND_Näide1 () Dim K kui string K = 25> = 20 ja 30 <= 29 MsgBox K Lõpp alam

Käivitage makro, et näha, mis on tulemus.

Tulemuseks saime VÄÄR, kuna rakendasime kahest tingimusest, esimene tingimus 25> = 20, see tingimus on täidetud, seega on tulemus TÕSI ja teine ​​tingimus 30 <= 29 see pole täidetud tulemus on VÄÄR. Tulemuse tõeseks saamiseks peaksid mõlemad tingimused olema täidetud.

Näide 2

Nüüd muudan loogilise testi väärtuseks „100> 95 JA 100 <200”.

Kood:

Alam AND_Näide2 () Dim k As String k = 100> 95 ja 100 <200 MsgBox k Lõpp Alam

Tulemuse nägemiseks käivitage kood.

Siin saime tulemuseks TÕENE, sest

1 silmus Loogiline Test: 100> 95 = TRUE

2 nd Loogiline Test: 100 <200 = TRUE

Kuna saime MÕLEMAD tulemused mõlemale loogilisele testile, on meie lõpptulemus TÕENE.

Näide # 3

Nüüd näeme töölehe andmeid. Kasutage Exceli JA funktsiooni näite kuvamiseks neid andmeid, mida oleme kasutanud.

Siin on tingimuseks 1. katse skoor> = 250 JA 2. katse skoor> = 250 .

Kuna meil on rohkem kui üks andmerakk, peame kasutama tsükleid, et vältida tarbetute ja aeganõudvate koodiridade kirjutamist. Olen teile kirjutanud alloleva koodi; valem ja loogika on samad, ainus asi on see, et olen kasutanud järgmist versiooni VBA.

Kood:

Sub AND_Näide3 () Mõõt k k täisarvuna väärtuseks k = 2 kuni 6 rakku (k, 3). Väärtus = Lahtrid (k, 1)> = 250 Ja lahtrid (k, 2)> = 250 Järgmine k Lõpp alam

See annab tulemuse täpselt sama, mis meie töölehe funktsioon, kuid me ei saa ühtegi valemit. Saame ainult tulemusi.

Niimoodi saame mitmete tingimuste testimiseks rakendada loogilist funktsiooni JA, mis kõik peaksid olema TÕELISED, et saada soovitud tulemused.

See töötab täiesti vastupidiselt funktsioonile OR, kus OR eeldab, et tulemuste saamiseks peab ükskõik milline esitatud tingimusest olema TÕENE, kuid JA nõuab tulemuste saamiseks 100% loogilist testi.

Huvitavad Artiklid...