VBA -loogiset operaattorit - TAI, JA, XOR, EI, IS, & TYKKÄ

VBA: n avulla voit käyttää loogisia operaattoreita Ja, Tai, Ei, Xor vertailla arvoja. Operaattoreita pidetään "Booleanina", mikä tarkoittaa, että he palauttavat True tai False.

Jos haluat oppia vertaamaan merkkijonoja, napsauta tätä: VBA Vertaa kieliä - StrComp

Jos haluat oppia käyttämään vertailuoperaattoreita, napsauta tätä: VBA -vertailuoperaattorit - ei yhtä ja muuta

Ja loogisen operaattorin käyttäminen

The Ja looginen operaattori vertaa kahta tai useampaa ehtoa. Jos kaikki ehdot täyttyvät, operaattori palauttaa arvon True. Jos ainakin yksi ehdoista ei ole totta, operaattori palauttaa arvon False. Tässä on esimerkki:

123456789101112 Dim intA kokonaislukunaDim intB kokonaislukunaDim blnTulos Boolen muodossaintA = 5intB = 5Jos intA = 5 Ja intB = 5 SittenblnResult = TottaMuublnResult = VääräLoppu Jos

Tässä esimerkissä haluamme tarkistaa, ovatko molemmat intA ja intB ovat yhtä kuin 5. Jos tämä on totta, Boolen arvo blnTulos tulee olemaan totta, muuten se on epätosi.

Ensin asetamme arvot intA ja intB 5:

12 intA = 5intB = 5

Sen jälkeen käytämme Ja operaattori If -lauseessa tarkistaakseen, ovatko arvot 5:

12345 Jos intA = 5 Ja intB = 5 SittenblnResult = TottaMuublnResult = VääräLoppu Jos

Koska molemmat muuttujat ovat yhtä suuret kuin 5, blnTulos palauttaa True:

Kuva 1. Ja loogisen operaattorin käyttäminen VBA: ssa

TAI loogisen operaattorin käyttäminen

The Tai looginen operaattori vertaa kahta tai useampaa ehtoa. Jos ainakin yksi ehdoista on tosi, se palauttaa arvon True. Jos mikään ehdoista ei ole totta, operaattori palauttaa arvon False. Tässä on esimerkin koodi:

123456789101112 Dim intA kokonaislukunaDim intB kokonaislukunaDim blnTulos Boolen muodossaintA = 5intB = 10Jos intA = 5 tai intB = 5 SittenblnResult = TottaMuublnResult = VääräLoppu Jos

Tässä esimerkissä haluamme tarkistaa, ovatko molemmat intA on yhtä kuin 5. tai intB on yhtä kuin 10. Jos jokin näistä ehdoista on totta, Boolen arvo blnTulos tulee olemaan totta, muuten se on epätosi.

Ensinnäkin asetamme arvon intA 5 ja intB 10:

12 intA = 5intB = 10

Sen jälkeen käytämme Tai operaattori If -lauseessa tarkistaakseen, onko jokin arvo 5:

12345 Jos intA = 5 tai intB = 5 SittenblnResult = TottaMuublnResult = VääräLoppu Jos

Kuten intA arvo on 5, blnTulos palauttaa True:

Kuva 2. Or loogisen operaattorin käyttäminen VBA: ssa

Ei -loogisen operaattorin käyttäminen

The Ei looginen operaattori tarkistaa yhden tai useamman ehdon. Jos ehdot täyttyvät, operaattori palauttaa arvon False. Muussa tapauksessa se palauttaa arvon True. Tässä on esimerkin koodi:

12345678910 Dim intA kokonaislukunaDim blnTulos Boolen muodossaintA = 5Jos ei (intA = 6) SittenblnResult = TottaMuublnResult = VääräLoppu Jos

Tässä esimerkissä haluamme tarkistaa, onko intA ei ole yhtä kuin 6. Jos intA on eri kuin 6, Boolen arvo blnTulos tulee olemaan totta, muuten se on epätosi.

Ensinnäkin asetamme arvon intA 5:

1 intA = 5

Tämän jälkeen käytämme If -lausekkeen Not -operaattoria tarkistaaksemme, onko intA: n arvo eri kuin 6:

12345 Jos ei (intA = 6) SittenblnResult = TottaMuublnResult = VääräLoppu Jos

Kuten intA arvo on 5, blnTulos palauttaa True:

Kuva 3. Ei -loogisen operaattorin käyttäminen VBA: ssa

Xor Logical Operatorin käyttäminen

The Xor looginen operaattori vertaa kahta tai useampaa ehtoa. Jos yksi ehdoista on totta, se palauttaa arvon True. Jos mikään ehdoista ei ole totta tai useampi kuin yksi on totta, se palauttaa arvon False. Tässä on esimerkin koodi:

123456789101112 Dim intA kokonaislukunaDim intB kokonaislukunaDim blnTulos Boolen muodossaintA = 5intB = 10Jos intA = 5 X tai intB = 5 SittenblnResult = TottaMuublnResult = VääräLoppu Jos

Tässä esimerkissä haluamme tarkistaa, onko yksi arvoista (intA tai IntB) yhtä suuri kuin 5. Jos vain yksi ehto on tosi, Boolen arvo blnTulos tulee olemaan totta, muuten se on epätosi.

Ensinnäkin asetamme arvon intA 5 ja intB 10:

12 intA = 5intB = 10

Sen jälkeen käytämme Tai operaattori If -lauseessa tarkistaakseen, onko jokin arvo 5:

12345 Jos intA = 5 X tai intB = 5 SittenblnResult = TottaMuublnResult = VääräLoppu Jos

Kuten intA arvo on 5 ja intB on 10, blnTulos palauttaa True:

Kuva 4. Loogisen Xor -operaattorin käyttäminen VBA: ssa

On operaattori

Is -operaattori testaa, tallentaako kaksi objektimuuttujaa samaa objektia.

Katsotaanpa esimerkkiä. Tässä osoitamme kaksi laskentataulukkoa laskentataulukko -objekteille rng1 ja rng2 ja testaamme, tallentuvatko kaksi laskentataulukko -objektia samaan laskentataulukkoon:

12345678910111213 Ala VertaaObjekteja ()Dim ws1 laskentataulukkona, ws2 laskentataulukkonaAseta ws1 = Sheets ("Sheet1")Aseta ws2 = Sheets ("Sheet2")Jos ws1 on ws2 SittenMsgBox "Sama WS"MuuMsgBox "Erilaiset WS: t"Loppu JosEnd Sub

Laskentataulukko -objektit eivät tietenkään ole samat, joten "Erilaiset WS: t" palautetaan.

Kuten operaattori

Tykkääjäoperaattori voi vertailla kahta merkkijonoa epätarkkoja osumia varten. Tässä esimerkissä testataan, alkaako merkkijono "Mr."

1234567891011121314 Sub LikeDemo ()Dim strName Kuten merkkijonoDim blnTulos Boolen muodossastrName = "Herra Michael James"Jos strName Kuten "Mr*" niinblnResult = TottaMuublnResult = VääräLoppu JosEnd Sub

Tulet auttaa kehittämään sivuston jakaminen sivu ystävillesi

wave wave wave wave wave