Selge VBA valik

DeklareerimineValik Selge koodimooduli ülaosas käsib VBA -l nõuda, et deklareeriksite kõik koodis kasutatavad muutujad. Kui see käsk välja jätta, saate kasutada muutujaid, mida te pole deklareerinud. Soovitame kasutada mooduli ülaosas olevat suvandit Explicit, kuna see aitab vältida muutujate eksimist.

VBA muutujate kasutamine ilma suvandita Explicit

Esmalt näitame koodi näidet, kui käsku Option Explicit pole. Siin on kood:

123456789 Privaatne alamnäideWOOptionExplicit ()Dim strTextA stringinastrTextA = "VBA testimine ilma selgesõnalise valikuta"MsgBox strTextAEnd Sub

Näites deklareerisime protseduuri esimesel real muutuja strTextA ja määrasime sellele teksti. Pärast seda tahame sõnumikasti väärtusega tagasi saata strTextA. Siin on tulemus koodi käivitamisel:

Pilt 1. Kood ilma suvandita Explicit

Nagu näete pildil 1, on kood edukalt täidetud. Sõnumikast väärtusega strTextA ilmus, kuigi me ei kuulutanud muutujat strTextA. Siin pole koodiga probleeme, aga mis siis, kui oleksime muutuja nime valesti kirjutanud:

1 MsgBox strTxtA

Siin kirjutasime strTextA asemel strTxtA (ilma “e” -ta). Selle tulemusena saame tühja sõnumikasti, kuna muutujat strTxtA ei määratud. Nüüd näeme, kuidas kasutada suvandit Explicit vigade vältimiseks.

Muutujate kasutamine koos suvandiga Explicit

Kui soovite vältida deklareerimata muutujate kasutamist, peate sisestamaValik Selge mooduli ülaosas:

1 Valik Selge

Siin on täielik kood, sealhulgas kirjaviga:

12345678910 Valik SelgePrivaatne alamnäideWithOptionExplicit ()Dim strTextA stringinastrTextA = "VBA testimine ilma selgesõnalise valikuta"MsgBox strTxtAEnd Sub

Vaatame, mis juhtub, kui käivitame koodi:

Pilt 2. Kood koos valikuga Explicit

Selle tulemusena saame vea „Muutuja pole määratletud”, kuna me ei deklareerinudstrTxtA muutuja.

Option Explicit lisamine koodimoodulite ülaossa aitab vältida valesti kirjutatud muutujate vigu.

Kui soovite rohkem teada saada VBA muude VBA valikute kohta, lugege, kuidas muuta VBA tõstutundetuks: vältige VBA tõstutundlikkust

Te aitate arengu ala, jagades leht oma sõpradega

wave wave wave wave wave