Kad ir jēga izmantot opciju skaidri - Excel padomi

Satura rādītājs

Šķiet, ka gadu gaitā esmu izraisījis zināmu satraukumu savas pretrunīgi vērtētās nostājas dēļ, ka OBA Explicit nav noderīga VBA. Man tas nesen atgādinājās, kad es veicu Skype sesiju Brazīlijas Excel nedēļas nogalē. Esmu uzrakstījis grāmatu par Excel VBA par QUE. Šī grāmata ir tulkota portugāļu valodā Brazīlijas tirgum. Tātad, acīmredzot, es 15 gadus esmu mācījis izcilajiem Brazīlijas iedzīvotājiem par Excel VBA. Tagad, kad esmu 15 gadus vecāks un gudrāks, es atzīšos, ka varētu būt pamatoti iemesli opcijas skaidra lietošanai.

Notre Dame es izgāju biznesa kursus ar lielu koncentrēšanos programmēšanā. Dīvainu apstākļu dēļ es izgāju katru programmēšanas kursu, kas pieejams ZD gan inženierzinātņu, gan biznesa skolās. Es iemācījos Fortran, Pascal, Assembler un COBOL. Man patika programmēt. Šie programmēšanas kursi izglāba manu GPA un neļāva mani izmest. Tajā pašā laikā mūsu profesori mums teica, ka mums ir jāplāno sava programma un jāzīmē roku zīmēšanas shēmas, pirms sākam kodēšanu. Es biju dumpinieks. Es vispirms uzrakstīju programmu un pēc tam uzzīmēju blokshēmu pēc tam, kad esmu to izdarījis.

Pirmos 18 mēnešus karjerā pavadīju, rakstot COBOL programmas. Bet tad es pārgāju uz finansēm un desmit gadus pavadīju finanšu un grāmatvedības jomā. Es galvenokārt nodarbojos ar grāmatvedību, bet, kad man vajadzēja uzrakstīt kādu kodu, es zināju pietiekami, lai uzrakstītu kādu kodu.

Es programmēju makro Lotus 1-2-3 un pēc tam sāku rakstīt VBA makro pēc tam, kad mēs 1995. gadā pārgājām uz Excel. Tajā brīdī es joprojām biju dumpīgs: savu mainīgo paziņošana pirms laika šķita pārāk līdzīga blokshēmas zīmēšanai pirms koda uzrakstīšanas. Es nekad neesmu viens, kas plāno uz priekšu. Ienirstiet. Sāciet kodēšanu. Ja kaut kur jums ir nepieciešams jauns mainīgais, vienkārši izveidojiet mainīgo.

Es biju dumpinieks, vispirms uzrakstīju kodu un vēlāk uzzīmēju blokshēmu. Es apgalvoju, ka mainīgo mainīšana ir paredzēta oficiāliem programmētājiem. Ja jūs strādājat grāmatvedībā un vienkārši izsitat 20 koda rindas, nav pamata paziņot savus mainīgos pirms laika.

Mana nostāja šajā jautājumā mani ir iedzinusi draudzīgos strīdos ar citiem Excel ekspertiem. Džordans Goldmeiers. Bobs Filipss. Krištianu Galvāo.

Pirmkārt, es vienmēr esmu ieteicis deklarēt jūsu objektu mainīgos. Zemāk esošajā kodā WSD tiek deklarēta kā darblapa un piešķirta, izmantojot komandu Set. Deklarējot objekta mainīgo, varat pārlūkot visas īpašības un metodes, ierakstot mainīgo, kam seko punkts.

Deklarējot objekta mainīgos, tiek izveidota šī noderīgā automātiskā pabeigšana

Neizmantojot opciju Explicit, rodas pareizrakstības kļūdu risks. Zemāk esošajā kodā tiek izveidots mainīgais ar nosaukumu FinalRow. Nākamajā rindiņā es, visticamāk, gribēju pāriet no 2 uz FinalRow, bet es kļūdaini ievadīju mainīgo kā Fina1Row.

Pirms vairākiem gadu desmitiem IBM Selectric tipogrāfi izlaida taustiņu 1, jo cilvēki tā vietā ierakstīja mazos burtus L.

Bez skaidras opcijas kāds var neapzināties, ka drukas kļūda ir. Mainīgajā FinalRow var būt 100. Bet cilpa iekšējais kods netiks izpildīts, jo mainīgais Fina1Row nekad netika inicializēts, un tajā būs nulle.

Lai novērstu vilšanos koda atkļūdošanā ar iespējamām rakstīšanas kļūdām, izvēlnē VBA varat atvērt Rīki, Opcijas. Izvēlieties zemāk redzamo lodziņu Pieprasīt mainīgo deklarāciju.

Lai noķertu drukas kļūdas, atzīmējiet šo izvēles rūtiņu.

Visi nākamie moduļi sāksies ar līniju, kurā teikts Option Explicit. Jums būs jāpievieno jaunas rindas makro augšpusē, nosakot mainīgos FinalRow un i. Excel jums neteiks par pareizrakstības kļūdām, kamēr jūs faktiski nemēģināt palaist makro. Pēc tam viņi brīdinās, ka mainīgais nav definēts.

Izceltais vārds ir nepareizi uzrakstīts.

Tātad, tas ir jūsu aicinājums. Ja jums nav iebildumu ieplānot un deklarēt visus savus mainīgos, jums būs VBA drošības tīkls, kas jums pateiks, ja mainīgais ir ievadīts nepareizi. Man labāk patīk saviļņot kodu atkļūdot pa vienai rindai un pašam atrast kļūdas mašīnrakstā. Bet, ja jums nav vēlēšanās dzīvot bīstami, droši iespējojiet opciju Explicit.

Es neesmu īsti pārliecināts, vai manas darbības bija saistītas ar 5., 8. vai 9. soli no 12 soļiem. Bet, ja kāds rakstīšanas kļūdas dēļ pavadīja papildu laiku koda atkļūdošanai, atvainojos, ka sagādāju jums šīs sāpes.

Katru sestdienu es programmā Excel pārrunāšu vienu no saviem sliktajiem ieradumiem un apspriedīšu, kāpēc varbūt jums vajadzētu darīt to, ko es saku, nevis darīt to, ko es daru.

Excel dienas doma

Esmu lūdzis saviem Excel Master draugiem padomu par Excel. Šodienas doma apdomāt:

"Nemainiet izklājlapu izstrādātāju vidējo pakāpi."

Džordans Goldmeiers

Interesanti raksti...