VBA aiškus pasirinkimas

DeklaravimasPasirinkimas aiškus kodo modulio viršuje nurodo VBA reikalauti, kad deklaruotumėte visus kintamuosius, kuriuos naudojate kode. Jei ši komanda praleidžiama, galite naudoti kintamuosius, kurių nedeklaravote. Rekomenduojame naudoti „Option Explicit“ modulio viršuje, nes tai padeda išvengti klaidingų kintamųjų rašymo.

VBA kintamųjų naudojimas be aiškios parinkties

Pirmiausia parodysime kodo pavyzdį, kai nėra komandos „Option Explicit“. Čia yra kodas:

123456789 Privatus antrinis pavyzdysWOOptionExplicit ()Dim strTextA kaip eilutėstrTextA = "VBA testavimas be aiškios parinkties"„MsgBox strTextA“Pabaiga Sub

Pavyzdyje pirmoje procedūros eilutėje deklaravome kintamąjį strTextA ir priskyrėme jam tekstą. Po to norime grąžinti pranešimų laukelį su reikšme strTextA. Štai rezultatas, kai vykdome kodą:

Vaizdas 1. Kodas be aiškios parinkties

Kaip matote 1 paveikslėlyje, kodas sėkmingai įvykdytas. Pranešimų laukelis su reikšme nuo strTextA pasirodė, nors nepaskelbėme kintamojo strTextA. Čia nėra problemų su kodu, bet kas būtų, jei būtume neteisingai parašę kintamojo pavadinimą:

1 „MsgBox strTxtA“

Čia vietoj strTextA parašėme „strTxtA“ (be „e“). Dėl to gauname tuščią pranešimų laukelį, nes kintamasis strTxtA nebuvo apibrėžtas. Dabar pamatysime, kaip naudoti „Option Explicit“, kad būtų išvengta klaidų.

Kintamųjų naudojimas su „Option Explicit“

Jei norite neleisti naudoti kintamųjų, kurie nėra deklaruoti, turite įvestiPasirinkimas aiškus modulio viršuje:

1 Pasirinkimas aiškus

Čia yra visas kodas, įskaitant klaidą:

12345678910 Pasirinkimas aiškusPrivatus antrinis pavyzdysWithOptionExplicit ()Dim strTextA kaip eilutėstrTextA = "VBA testavimas be aiškios parinkties"„MsgBox strTxtA“Pabaiga Sub

Pažiūrėkime, kas atsitiks, jei paleisime kodą:

2 paveikslėlis. Kodas su „Option Explicit“

Dėl to gauname klaidą „Kintamasis neapibrėžtas“, nes nedeklaravomestrTxtA kintamasis.

Jei pridėsite „Explicit Option“ kodo modulių viršuje, išvengsite klaidų dėl klaidingai parašytų kintamųjų.

Jei norite sužinoti daugiau apie kitas VBA VBA parinktis, sužinokite, kaip padaryti VBA nejautrus didžiosiomis ir mažosiomis raidėmis:

Padėsite svetainės plėtrą, dalintis puslapį su draugais

wave wave wave wave wave