Kai tikslinga naudoti aiškų variantą - „Excel“ patarimai

Turinys

Panašu, kad per daugelį metų sukėliau tam tikrą pyktį dėl savo prieštaringos pozicijos, kad „Option Explicit“ nėra naudinga VBA. Neseniai tai man buvo priminta, kai „Skype“ sesiją surengiau Brazilijos „Excel Weekend“. Parašiau knygą „Excel VBA“, skirtą QUE. Ta knyga išversta į portugalų kalbą Brazilijos rinkai. Taigi, matyt, 15 metų mokiau puikius Brazilijos žmones apie „Excel VBA“. Dabar, kai esu 15 metų vyresnė ir išmintingesnė, prisipažinsiu, kad gali būti rimtų priežasčių naudoti aiškų variantą.

„Notre Dame“ lankiau verslo kursus, daug dėmesio skyriau programavimui. Dėl keistų aplinkybių aš lankiau visus programavimo kursus, kuriuos ND galėjo gauti tiek inžinerijos, tiek verslo mokyklos. Aš išmokau „Fortran“, „Pascal“, „Assembler“ ir „COBOL“. Man patiko programuoti. Tie programavimo kursai išgelbėjo mano GPA ir neleido manęs išmesti. Tą dieną mūsų profesoriai mums pasakė, kad prieš pradėdami koduoti, mes turime suplanuoti savo programą ir piešti ranka schemas. Aš buvau maištininkas. Pirmiausia parašiau programą ir tada, kai baigiau, nubraižiau schemą.

Pirmus 18 savo karjeros mėnesių praleidau rašydamas COBOL programas. Bet tada perėjau į finansus ir dešimt metų dirbau finansų ir apskaitos srityse. Daugiausia dirbau buhalterinę apskaitą, bet kai reikėjo parašyti kodą, žinojau pakankamai, kad parašyčiau kodą.

Aš užprogramavau makrokomandas „Lotus 1-2-3“ ir tada pradėjau rašyti „VBA“ makrokomandas, kai 1995 m. Perėjome prie „Excel“. Tuo metu vis dar buvau maištingas: mano kintamųjų paskelbimas anksčiau laiko atrodė per daug panašus į schemos piešimą prieš rašant kodą. Niekada nesu tas, kuris planuoja iš anksto. Nerkite. Pradėkite koduoti. Jei jums reikia naujo kintamojo, tiesiog sukurkite kintamąjį.

Aš buvau maištininkas, pirmiausia rašiau kodą ir vėliau braižiau schemą. Kintamųjų deklaravimas, sakiau, yra skirtas oficialiems programuotojams. Jei dirbate apskaitos srityje ir tiesiog išmušate 20 kodo eilučių, nėra pagrindo deklaruoti savo kintamųjų iš anksto.

Mano požiūris į tai paskatino mane į draugiškus ginčus su kitais „Excel“ ekspertais. Jordanas Goldmeieris. Bobas Phillipsas. Cristiano Galvão.

Pirmiausia, aš visada rekomendavau deklaruoti jūsų objektų kintamuosius. Žemiau pateiktame kode WSD yra deklaruojamas kaip darbalapis ir priskiriamas naudojant komandą „Set“. Jei deklaruojate objekto kintamąjį, galite naršyti visas ypatybes ir metodus, įvesdami kintamąjį, po kurio nurodomas taškas.

Deklaravus objekto kintamuosius, bus sukurtas šis naudingas automatinis užbaigimas

Nenaudodami aiškios parinkties rizikuojate rašybos klaidomis. Žemiau esančiame kode sukuriamas kintamasis, vadinamas „FinalRow“. Kitoje eilutėje greičiausiai norėjau pereiti nuo 2 iki „FinalRow“, bet aš neteisingai įvedžiau kintamąjį kaip „Fina1Row“.

Prieš kelis dešimtmečius „IBM Selectric“ autoriai praleido 1 raktą, nes žmonės vietoj to įves mažąsias raides.

Be aiškių variantų kas nors gali nesuvokti, kad yra rašybos klaida. Kintamajame „FinalRow“ gali būti 100. Tačiau ciklo viduje kodas nebus vykdomas, nes „Fina1Row“ kintamasis niekada nebuvo inicijuotas ir jame bus nulis.

Norėdami išvengti nusivylimo derinti kodą su galimomis spausdinimo klaidomis, meniu VBA galite atidaryti įrankius, parinktis. Pasirinkite žemiau pateiktą langelį Reikalauti kintamosios deklaracijos.

Norėdami sugauti klaidas, pažymėkite šį laukelį.

Visi būsimi moduliai prasidės eilute, kurioje sakoma „Option Explicit“. Turėsite pridėti naujų eilučių makrokomandos, apibrėžiančios „FinalRow“ ir „i“ kintamuosius, viršuje. „Excel“ nepasakys apie rašybos klaidas, kol iš tikrųjų nebandysite paleisti makrokomandos. Tada jie jus įspės, kad kintamasis nėra apibrėžtas.

Paryškintas žodis parašytas neteisingai.

Taigi, tai jūsų skambutis. Jei neprieštaraujate planavimui iš anksto ir visų kintamųjų deklaravimui, VBA apsaugos tinklas jums pasakys, jei neteisingai įvedėte kintamąjį. Man labiau patinka jaudinimasis derinant kodą po vieną eilutę ir pačiam surandant spausdinimo klaidas. Bet jei nenorite gyventi pavojingai, nedvejodami įjunkite „Option Explicit“.

Nesu tikras, ar mano veiksmai buvo susiję su 5, 8 ar 9 žingsniais iš 12 žingsnių. Bet jei kas nors praleido papildomą laiką derindamas savo kodą dėl spausdinimo klaidos, apgailestauju, kad sukėliau jums tokį skausmą.

Kiekvieną šeštadienį „Excel“ aptarsiu vieną savo blogų įpročių ir aptarsiu, kodėl galbūt turėtumėte daryti tai, ką sakau, o ne daryti tai, ką darau aš.

„Excel“ dienos mintis

Aš paprašiau savo „Excel Master“ draugų patarimo apie „Excel“. Šiandienos mintis apmąstyti:

"Nekeiskite skaičiuoklės kūrėjų vidurio."

Jordanas Goldmeieris

Įdomios straipsniai...