Atkļūdošanas metodes programmai Excel 2016 VBA

Var rasties problēmas ar savu VBA kodu, bet kā atrast problēmu? Dažreiz jūsu VBA kodam var būt nepieciešama atkļūdošana. Turpiniet lasīt, lai atklātu četras visizplatītākās metodes Excel VBA koda atkļūdošanai:

  • Pārbaudot kodu

  • MsgBox funkciju ievietošana dažādās koda vietās

  • Notiek Debug.Print paziņojumu ievietošana

  • Izmantojot Excel iebūvētos atkļūdošanas rīkus

Pārbaudot jūsu kodu

Iespējams, visvienkāršākā atkļūdošanas tehnika ir vienkārši rūpīgi apskatīt kodu, lai noskaidrotu, vai varat atrast problēmu. Šī metode, protams, prasa zināšanas un pieredzi. Citiem vārdiem sakot, jums ir jāzina, ko jūs darāt. Ja jums paveicas, kļūda parādās uzreiz, un jūs sitāt pa pieri un sakāt: "Ak!" Kad pieres sāpes mazinās, jūs varat novērst problēmu.

Pievērsiet uzmanību vārdu lietojumam: "Ja jums paveicas". Tas ir tāpēc, ka bieži jūs atklājat kļūdas, kad esat strādājis pie savas programmas astoņas stundas pēc kārtas, ir pulksten 2 naktī un jūs strādājat ar kofeīnu un gribasspēku. Šādos gadījumos jums ir paveicies, ja varat pat redzēt savu kodu, nemaz nerunājot par kļūdu atrašanu. Tāpēc nebrīnieties, ja ar koda pārbaudi vien nepietiek, lai atrastu un izdzēstu visas tajā esošās kļūdas.

Izmantojot funkciju MsgBox

Bieži sastopama problēma daudzās programmās ir saistīta ar vienu vai vairākiem mainīgajiem, kas nepieņem gaidītās vērtības. Šādos gadījumos mainīgā(-u) pārraudzība koda darbības laikā ir noderīgs atkļūdošanas paņēmiens. Viens veids, kā to izdarīt, ir savā rutīnā ievietot pagaidu MsgBox funkcijas. Piemēram, ja jums ir mainīgais ar nosaukumu CellCount, varat ievietot šādu paziņojumu:

MsgBox šūnu skaits

Kad izpildāt rutīnu, funkcija MsgBox parāda CellCount vērtību.

Bieži vien ir noderīgi ziņojuma lodziņā parādīt divu vai vairāku mainīgo vērtības. Šis paziņojums parāda divu mainīgo pašreizējo vērtību: LoopIndex (1) un CellCount (72), atdalot tos ar atstarpi.

MsgBox LoopIndex & " " & CellCount

Ņemiet vērā, ka abi mainīgie ir apvienoti ar saitīšanas operatoru (&) un ievietojiet starp tiem atstarpes rakstzīmi. Pretējā gadījumā ziņojuma lodziņā abas vērtības tiek saliktas kopā, padarot tās līdzīgas vienai vērtībai. Atstarpes rakstzīmes vietā varat izmantot arī iebūvēto konstanti vbNewLine. vbNewLine ievieto rindas padeves pārtraukumu, kas parāda tekstu jaunā rindā. Šis paziņojums parāda trīs mainīgos, katrs atsevišķā rindā:

Atkļūdošanas metodes programmai Excel 2016 VBA

Ziņojuma lodziņa izmantošana, lai parādītu trīs mainīgo vērtību.

MsgBox LoopIndex & vbNewLine & CellCount & vbNewLine & MyVal

Šī metode neaprobežojas tikai ar mainīgo lielumu uzraudzību. Varat izmantot ziņojumu lodziņu, lai parādītu visu veidu noderīgu informāciju, kamēr kods darbojas. Piemēram, ja kods iziet cauri virknei lapu, tālāk norādītajā paziņojumā tiek parādīts aktīvās lapas nosaukums un veids:

MsgBox ActiveSheet.Name & " " & TypeName(Active Sheet)

Ja ziņojuma lodziņā tiek parādīts kaut kas neparedzēts, nospiediet Ctrl+Break un tiek parādīts dialoglodziņš, kas informē, ka koda izpilde ir pārtraukta, jums ir četras izvēles iespējas:

  • Noklikšķiniet uz pogas Turpināt. Kods turpinās izpildīt.

  • Noklikšķiniet uz pogas Beigt. Izpilde apstājas.

  • Noklikšķiniet uz pogas Atkļūdot. VBE pāriet atkļūdošanas režīmā.

  • Noklikšķiniet uz pogas Palīdzība. Palīdzības ekrānā tiek parādīts, ka nospiedāt Ctrl+Break. Citiem vārdiem sakot, tas nav īpaši noderīgi.

    Atkļūdošanas metodes programmai Excel 2016 VBA

    Nospiežot taustiņu kombināciju Ctrl+Break, tiek apturēta koda izpilde un tiek piedāvātas dažas izvēles iespējas.

Ja tastatūrai nav Break taustiņa, mēģiniet nospiest Ctrl+ScrollLock.

Atkļūdojot kodu, varat bieži izmantot MsgBox funkcijas. Noteikti noņemiet tos pēc problēmas noteikšanas un novēršanas.

Notiek Debug.Print paziņojumu ievietošana

Kā alternatīvu MsgBox funkciju izmantošanai kodā varat ievietot vienu vai vairākus pagaidu Debug.Print paziņojumus. Izmantojiet šos paziņojumus, lai izdrukātu viena vai vairāku mainīgo vērtību tūlītējā logā. Šeit ir piemērs, kas parāda trīs mainīgo vērtības:

Debug.Print LoopIndex, CellCount, MyVal

Ņemiet vērā, ka mainīgie ir atdalīti ar komatiem. Varat parādīt tik daudz mainīgo, cik vēlaties, izmantojot vienu Debug.Print paziņojumu.

Debug.Print nosūta izvadi tūlītējam logam pat tad, ja šis logs ir paslēpts. Ja VBE tūlītējais logs nav redzams, nospiediet Ctrl+G (vai izvēlieties Skats → Tūlītējais logs). Šeit ir daži rezultāti tūlītējā logā.

Atkļūdošanas metodes programmai Excel 2016 VBA

Debug.Print paziņojums nosūta izvadi uz tūlītējo logu.

Atšķirībā no MsgBox, Debug.Print paziņojumi neaptur jūsu kodu. Tāpēc jums ir jāseko tūlītējam logam, lai redzētu, kas notiek.

Pēc koda atkļūdošanas noteikti noņemiet visus Debug.Print paziņojumus. Pat lielie uzņēmumi, piemēram, Microsoft, laiku pa laikam aizmirst noņemt savus Debug.Print paziņojumus. Vairākās iepriekšējās Excel versijās katru reizi, kad tika atvērta pievienojumprogramma Analysis ToolPak, tūlītējā logā tika parādīti vairāki dīvaini ziņojumi. Šī problēma beidzot tika novērsta programmā Excel 2007.

Izmantojot VBA atkļūdotāju

Excel dizaineri ir labi pazīstami ar kļūdu jēdzienu. Līdz ar to programmā Excel ir iekļauts atkļūdošanas rīku komplekts, kas var palīdzēt novērst problēmas VBA kodā.

Leave a Comment

Kā pārvietoties Word 2007 tabulā

Kā pārvietoties Word 2007 tabulā

Uzziniet, kā efektīvi pārvietoties Word 2007 tabulā, izmantojot īsinājumtaustiņus un peles darbības, lai optimizētu savu darba plūsmu.

10 Excel funkcijas, kas jums patiešām būtu jāzina

10 Excel funkcijas, kas jums patiešām būtu jāzina

Šajā sarakstā ir iekļautas desmit populārākās Excel funkcijas, kas attiecas uz plašu vajadzību klāstu. Uzziniet, kā izmantot <strong>Excel funkcijas</strong> efektīvāk!

Papildu analīzes slāņu pievienošana jūsu Excel diagrammām

Papildu analīzes slāņu pievienošana jūsu Excel diagrammām

Uzziniet, kā pievienot papildu analīzes slāņus jūsu Excel diagrammām, lai uzlabotu vizualizāciju un sniegtu precīzākus datus. Šis raksts apraksta visas nepieciešamās darbības.

Kā izveidot rindkopas atkāpi programmā Word 2013

Kā izveidot rindkopas atkāpi programmā Word 2013

Uzziniet, kā iestatīt <strong>rindkopas atkāpi</strong> programmā Word 2013, lai uzlabotu dokumenta noformējumu un lasāmību.

Kā ievietot slejas Word 2010 dokumentā

Kā ievietot slejas Word 2010 dokumentā

Uzziniet, kā pareizi ievietot slejas programmā Word 2010, lai uzlabotu jūsu dokumentu formātu un struktūru.

Šūnu datu aizsardzība programmā Excel 2007

Šūnu datu aizsardzība programmā Excel 2007

Apsveriet iespēju aizsargāt Excel 2007 darblapu, lai izvairītos no neplānotām izmaiņām. Uzziniet, kā aizsargāt un atbloķēt šūnas, lai nodrošinātu datu integritāti.

PMT funkcija programmā Excel 2013

PMT funkcija programmā Excel 2013

Programmas Excel 2013 PMT funkcija aprēķina periodisko mūža rentes maksājumu. Šī funkcija ir būtiska hipotekāro kredītu maksājumu plānošanai.

Kā lietot t-test datu analīzes rīku programmā Excel

Kā lietot t-test datu analīzes rīku programmā Excel

Mācieties, kā veikt t-testus Excel programmā, izmantojot datus un aprakstot trīs t-testu veidus, kas noderēs jūsu datu analīzes procesā.

Kā filtrēt datu sarakstu programmā Excel 2016

Kā filtrēt datu sarakstu programmā Excel 2016

Uzziniet, kā filtrēt datu sarakstu programmā Excel 2016, lai ērti paslēptu nevēlamus ierakstus un strādātu tikai ar nepieciešamajiem datiem.

Kā pievienot datu etiķetes diagrammai programmā Excel 2007

Kā pievienot datu etiķetes diagrammai programmā Excel 2007

Uzziniet, kā vienkārši pievienot datu etiķetes diagrammai programmā Excel 2007. Palīdziet noteikt vērtības, kas tiek rādītas katrā datu punktā, izmantojot dažādas izvietošanas un formatēšanas iespējas.