VBA: n avulla voit vertailla arvoja vertailuoperaattoreilla. Käyttämällä näitä operaattoreita voit vertailla arvoja ja palauttaa Boolen tosi- tai epätosi -arvon.
Luettelo VBA: n tärkeimmistä vertailutoimijoista
Ensin näytämme luettelon vertailuoperaattoreista, joita voidaan käyttää VBA -koodissa:
Vertailuoperaattori | Selitys |
= |
Yhtä kuin |
Ei yhtä kuin |
|
> |
Suurempi kuin |
>= |
Suurempi tai yhtä suuri kuin |
< |
Vähemmän kuin |
<= |
Pienempi kuin tai yhtä suuri kuin |
Yhtä kuin
The Yhtä kuin operaattori tarkistaa, ovatko kaksi arvoa yhtä suuret ja palauttaa True tai False. Tässä on esimerkkikoodi:
123456789101112 | Dim intA kokonaislukunaDim intB kokonaislukunaDim blnTulos Boolen muodossaintA = 5intB = 5Jos intA = intB SittenblnResult = TottaMuublnResult = VääräLoppu Jos |
Tässä esimerkissä haluamme tarkistaa, onko intA on yhtä suuri kuin intB. 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 = operaattori If -lauseessa tarkistaakseen, ovatko intA ja intB ovat tasa-arvoisia:
12345 | Jos intA = intB SittenblnResult = TottaMuublnResult = VääräLoppu Jos |
Molemmat muuttujat ovat yhtä suuret kuin 5, joten blnTulos palauttaa True:
Kuva 1. Equal To -operaattorin käyttäminen
Ei yhtä kuin
The Ei Yhtä kuin operaattori tarkistaa, jos kaksi arvoa eivät ole samat, ja palauttaa True tai False. Tässä on esimerkkikoodi:
Tapahtui virhe. Yritä uudelleen myöhemmin. |
Tässä esimerkissä haluamme tarkistaa, onko intA ei ole yhtä kuin intB. Jos tämä on totta, Boolen arvo blnTulos tulee olemaan totta, muuten se on epätosi.
Käytämme operaattori If -lauseessa tarkistaakseen, ovatko intA ja intB ovat erilaisia:
12345 | Jos intA intB SittenblnResult = TottaMuublnResult = VääräLoppu Jos |
Arvo intA on 5 ja arvo intB on 6, muuttujat eivät ole samat, joten blnTulos palauttaa True:
Kuva 2. Not Not To To -operaattorin käyttäminen
Suurempi kuin
The Suurempi kuin operaattori tarkistaa, onko ensimmäinen arvo suurempi kuin toinen, ja palauttaa True tai False. Tässä on esimerkkikoodi:
123456789101112 | Dim intA kokonaislukunaDim intB kokonaislukunaDim blnTulos Boolen muodossaintA = 6intB = 5Jos intA> intB SittenblnResult = TottaMuublnResult = VääräLoppu Jos |
Tässä esimerkissä haluamme tarkistaa, onko intA on suurempi kuin intB. Jos tämä on totta, Boolen arvo blnTulos tulee olemaan totta, muuten se on epätosi.
Lisäksi käytämme > operaattori If -lauseessa tarkistaakseen, onko intA on suurempi kuin intB:
12345 | Jos intA> intB SittenblnResult = TottaMuublnResult = VääräLoppu Jos |
Yhteenvetona, kutenintA on suurempi kuin intB, blnTulos palauttaa True:
Kuva 3. Suuremman kuin -operaattorin käyttäminen
Suurempi tai yhtä suuri kuin
The Suurempi tai yhtä suuri kuin operaattori tarkistaa, onko ensimmäinen arvo suurempi tai yhtä suuri kuin toinen arvo ja palauttaa True tai False. Tässä on esimerkkikoodi:
123456789101112 | Dim intA kokonaislukunaDim intB kokonaislukunaDim blnTulos Boolen muodossaintA = 5intB = 5Jos intA> = intB SittenblnResult = TottaMuublnResult = VääräLoppu Jos |
Tässä esimerkissä haluamme tarkistaa, onko intA on suurempi tai yhtä suuri kuin intB. Jos tämä on totta, Boolen arvo blnTulos tulee olemaan totta, muuten se on epätosi.
Käytämme>= operaattori If -lauseessa tarkistaakseen, onko intA on suurempi tai yhtä suuri kuin intB:
12345 | Jos intA> = intB SittenblnResult = TottaMuublnResult = VääräLoppu Jos |
Yhteenvetona voidaan todeta, että koska molemmat muuttujat ovat yhtä suuret kuin 5, blnTulos palauttaa True:
Kuva 4. Suuremman tai yhtä suuren operaattorin käyttäminen
Vähemmän kuin
The Vähemmän kuin operaattori tarkistaa, onko ensimmäinen arvo pienempi kuin toinen arvo ja palauttaa True tai False. Tässä on esimerkkikoodi:
123456789101112 | Dim intA kokonaislukunaDim intB kokonaislukunaDim blnTulos Boolen muodossaintA = 5intB = 6Jos intA <intB SittenblnResult = TottaMuublnResult = VääräLoppu Jos |
Tässä esimerkissä haluamme tarkistaa, onko intA on vähemmän kuin intB. Jos tämä on totta, Boolen arvo blnTulos tulee olemaan totta, muuten se on epätosi.
Käytämme < operaattori If -lauseessa tarkistaakseen, onko intA on vähemmän kuin intB:
12345 | Jos intA <intB SittenblnResult = TottaMuublnResult = VääräLoppu Jos |
Kuten intA on vähemmän kuin intB, blnTulos palauttaa True:
Kuva 5. Käyttämällä vähemmän kuin -operaattoria
Pienempi kuin tai yhtä suuri kuin
The Alle tai Yhtä kuin operaattori tarkistaa, onko ensimmäinen arvo pienempi tai yhtä suuri ja palauttaa True tai False. Tässä on esimerkkikoodi:
123456789101112 | Dim intA kokonaislukunaDim intB kokonaislukunaDim blnTulos Boolen muodossaintA = 5intB = 5Jos intA <= intB SittenblnResult = TottaMuublnResult = VääräLoppu Jos |
Tässä esimerkissä haluamme tarkistaa, onko intA on pienempi tai yhtä suuri kuin intB. Jos tämä on totta, Boolen arvo blnTulos tulee olemaan totta, muuten se on epätosi.
Käytämme <= operaattori If -lausekkeessa ja tarkistaa, onko intA on pienempi tai yhtä suuri kuin intB:
12345 | Jos intA <= intB SittenblnResult = TottaMuublnResult = VääräLoppu Jos |
Yhteenvetona voidaan todeta, että koska molemmat muuttujat ovat yhtä suuret kuin 5, blnTulos palauttaa True:
Kuva 6. Käyttäjä vähemmän kuin tai yhtä suuri kuin operaattori
On operaattori
Is -operaattori testaa, sisältääkö kaksi objektimuuttujaa samaa objektia:
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 |
Kuten operaattori
Tykkääjäoperaattoria voidaan käyttää etsimään epätarkkoja tekstivastaavuuksia. 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 |
Jos haluat oppia vertaamaan merkkijonoja, napsauta tätä: VBA Vertaa kieliä - StrComp
Jos haluat oppia käyttämään vertailuoperaattoreita, napsauta tätä: VBA Logical Operators