VBA „Is“ operatorius naudojamas dviejų objektų nuorodoms palyginti.
Jei objektų nuorodos yra vienodos, Ar grąžins TIESA. Jei objektų nuorodos skiriasi, Ar grįš FALSE.
Ar Nieko
Dažniausiai naudojamas Ar operatorius turi patikrinti, ar objektas priskirtas objekto kintamajam.
Kaip tai veikia, galite pamatyti atlikdami šią procedūrą:
123456789101112 | Sub IsN Nothing ()Dim ws kaip darbalapis'Nustatykite ws = ActiveSheetJei ws yra niekas, tada„MsgBox“ nėra priskirtasKitas„MsgBox“ priskirtasPabaiga JeiPabaiga Sub |
Tai naudinga norint išvengti klaidų, kurias sukelia objektas, nepriskiriamas objekto kintamajam.
Susikirtimas - nieko
Paprastai tai naudojama su darbalapio keitimo įvykiais, siekiant nustatyti, ar tikslinis diapazonas patenka į nurodytą diapazoną.
1234567 | Privatus antrinis darbalapio keitimas („ByVal Target“ kaip diapazonas)Jei nesikerta (Tikslas, diapazonas ("a1: a10")) Tada nieko nėra„MsgBox“ susikertaPabaiga JeiPabaiga Sub |
Is - Palyginti objektus
„Is“ operatorius taip pat gali būti naudojamas objektams palyginti.
Pažvelkime į pavyzdį. Čia darbalapio objektams rng1 ir rng2 priskirsime du darbalapius, patikrindami, ar abu darbalapio objektai saugo tą patį darbalapį:
12345678910111213 | Sub CompareObjects ()Dim ws1 kaip darbalapis, ws2 kaip darbalapisNustatyti ws1 = Lakštai („Lapas1“)Nustatyti ws2 = Lakštai („Lapas2“)Jei ws1 Ar ws2 Tada„MsgBox“ „Tas pats WS“Kitas„MsgBox“ skirtingi WSPabaiga JeiPabaiga Sub |
Žinoma, darbalapio objektai nėra vienodi, todėl grąžinamas „Skirtingi WS“.