VBA on operaator

Lang L: none (table-of-contents)

Operaatorit VBA “Kas” kasutatakse kahe objektiviite võrdlemiseks.

Kui objektide viited on samad, On tagastab tõe. Kui objektide viited on erinevad, On naaseb VÄÄR.

Kas pole midagi

Kõige tavalisem kasutamine On operaator peab kontrollima, kas objekt on muutujale määratud.

Kuidas see toimib, näete järgmises menetluses:

123456789101112 Alam pole midagi ()Dim ws töölehena'Määra ws = ActiveSheetKui ws pole midagi, siisSõnumikast "Pole määratud"MuiduSõnumikast "Määratud"Lõpp KuiEnd Sub

See on kasulik, et vältida vigu, mis on põhjustatud sellest, et objekt ei ole objekti muutujale määratud.

Ristub - pole midagi

Tavaliselt kasutatakse seda koos töölehe muutmise sündmustega, et teha kindlaks, kas sihtvahemik jääb määratud vahemikku.

1234567 Privaatne alamlehe muutmine (ByVal Target kui vahemik)Kui mitte ristuda (sihtmärk, vahemik ("a1: a10")) pole siis midagiMsgBox "Ristub"Lõpp KuiEnd Sub

On - Objektide võrdlemine

Operaatorit Is saab kasutada ka objektide võrdlemiseks.

Vaatame näidet. Siin määrame töölehe objektidele rng1 ja rng2 kaks töölehte, katsetades, kas need kaks töölehe objekti salvestavad sama töölehe:

12345678910111213 Sub CompareObjects ()Dim ws1 töölehena, ws2 töölehenaSet ws1 = Sheets ("Sheet1")Set ws2 = Sheets ("Sheet2")Kui ws1 on ws2 siisMsgBox "Sama WS"MuiduMsgBox "Erinevad WS -id"Lõpp KuiEnd Sub

Muidugi pole töölehe objektid samad, seega tagastatakse „Erinevad WS -id”.

Te aitate arengu ala, jagades leht oma sõpradega

wave wave wave wave wave