VBA - Visual Basic redaktora (VBE) atvēršana un izmantošana programmā Excel

Šī apmācība parādīs, kā atvērt un programmēt VBA Visual Basic redaktorā.

Visual Basic redaktora atvēršana

Ir vairāki veidi, kā programmā Excel piekļūt Visual Basic Editor (VBE).

Nospiediet Alt + F11 uz tastatūras.

VAI

Klikšķis Skatīt> Makro> Skatīt makro. No šejienes jūs varat Rediģēt esošu makro vai Izveidot jaunu. Jebkura opcija atver VB redaktoru.

VAI

Izstrādātājs> Visual Basic

Piezīme. Ja neredzat izstrādātāja lenti, tā ir jāiespējo.

Lai iespējotu izstrādātāja lenti

Noklikšķiniet uz Fails cilni lentē un pārejiet uz Iespējas. Iekš Pielāgot lenti iespējas, atzīmējiet Izstrādātājs izvēles rūtiņu. Pēc noklusējuma tas ir izslēgts, tāpēc jums tas būs jāieslēdz, lai redzētu lentes cilni.

Klikšķis labi.

Cilne Izstrādātājs parādīsies galvenajā lentē. Lai piekļūtu Visual Basic redaktoram, lentes sākumā noklikšķiniet uz Visual Basic.

Izpratne par VBE ekrānu

VBE ekrāns ir parādīts zemāk esošajā grafikā.

Projekta pētnieks

Project Explorer ļauj jums redzēt, kā tiek organizēts projekts, kurā jūs strādājat. Jūs varat redzēt, cik moduļu un veidlapu ir saglabāts projektā, un varat pārvietoties starp šiem moduļiem un veidlapām. Modulis ir vieta, kur tiek saglabāts jūsu darbgrāmatas kods; ierakstot makro, tas tiks saglabāts standarta modulī - pēc noklusējuma tas tiks nosaukts “1. modulis.

Katrai darblapai jūsu Excel failā ir arī modulis, kā arī pati darbgrāmata. Ievietojot jaunu lapu darbgrāmatā, izmantojot galveno Excel ekrānu, Project Explorer tiks parādīts papildu lapas modulis.

Veiciet dubultklikšķi uz moduļa, lai pārietu uz šī moduļa kodu.

Varat arī rīkjoslā noklikšķināt uz izvēlnes Logs un tur izvēlēties moduli, lai pārietu uz šī moduļa kodu.

Moduļu veids

Moduļi ir sadalīti 5 dažādos veidos.

  1. Standarta moduļi - lielākā daļa jūsu koda nonāks šāda veida modulī. Ierakstot makro, tas tiek ievietots standarta modulī. Kad rakstāt vispārīgu procedūru, kas jāizmanto visā darbgrāmatā, tā parasti tiek iekļauta arī standarta modulī.
  2. Darbgrāmatas moduļi - šis modulis satur kodu, kas ir unikāls šai atsevišķajai darbgrāmatai. Lielākā daļa šāda veida moduļu koda ir pazīstami kā PASĀKUMI. Notikums var notikt, piemēram, atverot vai aizverot darbgrāmatu. Modulis var saturēt arī kodu, ko esat uzrakstījis pats un izmantojis notikumos.
  3. Loksnes moduļi - šis modulis satur kodu, kas ir unikāls šai atsevišķai lapai. Tie var rasties, piemēram, noklikšķinot uz lapas ( Noklikšķiniet uz Notikums) vai kad maināt šūnas datus. Šis modulis var saturēt arī kodu, ko esat uzrakstījis pats un izsaucis notikumi.
  4. Veidlapu moduļi - tas ir modulis aiz pielāgotas veidlapas, kuru varat izveidot. Piemēram, varat izveidot veidlapu, lai saglabātu informāciju par rēķinu, ar pogu OK, aiz pogas esošais kods (klikšķu notikums) satur kodu, kas tiks palaists, noklikšķinot uz pogas.
  5. Klases moduļi - šo moduli izmanto, lai izveidotu objektus izpildes laikā. Klases moduli izmanto uzlaboti VBA programmētāji, un tie tiks apskatīti vēlāk.

Moduļa vai veidlapas ievietošana kodā

Lai kodā ievietotu jaunu moduli, noklikšķiniet uz Ievietot izvēlnes joslā un noklikšķiniet uz Modulis.

Vai arī noklikšķiniet uz Ievietot moduli pogu, kuru atradīsit standarta lentē.

Lai kodā ievietotu jaunu lietotāja veidlapu, izvēlieties UserForm iespēja.

Ekrānā parādīsies jauna lietotāja veidlapa Projektu pētnieks un tiks parādīts koda logā labajā pusē.

Varat arī ievietot a Klases modulis

Klases modulis tiek izmantots objektu ievietošanai jūsu VBA projektā.

Moduļa vai veidlapas noņemšana no Project Explorer

Ar peles labo pogu noklikšķiniet uz moduļa vai veidlapas, kuru vēlaties noņemt, lai parādītu labo klikšķu saīsnes izvēlni.

Klikšķis Noņemt (šajā gadījumā UserForm1… )

VAI

Noklikšķiniet uz Fails izvēlnē un pēc tam noklikšķiniet uz Noņemt (UserForm1).

Parādīsies brīdinājuma lodziņš ar jautājumu, vai vēlaties eksportēt veidlapu vai moduli, pirms to noņemat. Veidlapas vai moduļa eksportēšana ļauj to saglabāt kā atsevišķu failu izmantošanai citā Excel projektā citā laikā.

Biežāk nekā nav, ja noņemat moduli vai veidlapu, jo tas jums nav vajadzīgs, tāpēc noklikšķiniet uz Nē.

Rekvizītu logs

Jūs redzēsit rekvizītu logu zem Projektu pētnieks. Iespējams, tas būs jāieslēdz.

Nospiediet F4 vai noklikšķiniet Skatīt, Rekvizītu logs.

Rekvizītu logs ļauj skatīt rekvizītus konkrētajam modulim vai veidlapai, kas ir atlasīta sadaļā Projektu pētnieks. Strādājot ar moduļiem, varat izmantot rekvizītu logu, lai mainītu moduļa nosaukumu. Šis ir vienīgais moduļa īpašums. Tomēr, strādājot ar veidlapām, būs pieejams daudz vairāk rekvizītu, un rekvizītu logs tiek plaši izmantots, lai kontrolētu veidlapu darbību un veidlapā esošās vadīklas.

Ierakstot makro, tas tiek automātiski ievietots standarta modulī. Moduļa nosaukums būs “1. modulis un jebkurš šajā modulī esošais kods ir pieejams izmantošanai visā jūsu projektā. Jums vajadzētu pārdēvēt savu moduli par kaut ko nozīmīgu, kas atvieglotu jūsu koda atrašanu, ja projektam pievienotu vairākus moduļus.

Varat arī pārdēvēt savas veidlapas.

Ja esat pārdēvējis savu lapu programmā Excel, lapas nosaukums tiks parādīts kā lapas nosaukums iekavās aiz lapas 1.

Ja vēlaties mainīt aiz lapas esošā moduļa nosaukumu, varat to mainīt tādā pašā veidā, kā maināt moduļa un lietotāja veidlapas nosaukumu - logā Rekvizīti mainot rekvizītu Name.

Vai esat noguris no VBA koda piemēru meklēšanas? Izmēģiniet AutoMacro!

Koda logs

Koda logs parāda apakšprocedūras un funkcijas, kas ir iekļautas jūsu moduļos - tas parāda faktisko kodu. Ierakstot makro, jums tiks izveidota apakšprocedūra. Ja makro pievienojat īsinājumtaustiņu, tas tiks parādīts kā makro komentārs, lai jūs uzzinātu, kāda ir īsceļa atslēga, kuru esat piešķīris makro.

Koda loga augšpusē ir divi kombinētie lodziņi. Tie ļauj jums redzēt, kurš objekts (ja tāds ir) modulī, pie kura jūs varētu strādāt, un pie kādas procedūras jūs varētu strādāt.

Iepriekš minētajā piemērā mēs nestrādājam pie neviena objekta - tādējādi tas ir iestatīts kā vispārīgs, bet mēs strādājam saskaņā ar Gridlines procedūru.

Ja šajā modulī būtu vairāk nekā viena procedūra, mēs varētu izmantot iepriekš minēto kombinēto lodziņu, lai pārietu uz citām procedūrām.

Izpratne par kodeksu

Ir divu veidu procedūras - Apakšprocedūras un Funkciju procedūras.

Apakšprocedūras

Makro ierakstītājs var ierakstīt tikai apakšprocedūras. Apakšprocedūra dara lietas. Viņi veic darbības, piemēram, formatē tabulu vai izveido rakurstabulu, vai režģlīnijas piemērā maina aktīvā loga skata iestatījumus. Lielākā daļa rakstīto procedūru ir apakšprocedūras. Visi makro ir apakšprocedūras.

Apakšprocedūra sākas ar a Sub paziņojums un beidzas ar Beigu apakš paziņojums, apgalvojums. Procedūras nosaukumam vienmēr seko iekavas.

123 Sub HideGridLines ()ActiveWindow.DisplayGridlines = NepareiziBeigu apakš

Funkciju procedūras

Funkcijas procedūra atgriež vērtību. Šī vērtība var būt viena vērtība, masīvs, šūnu diapazons vai objekts. Funkcijas parasti veic kāda veida aprēķinus. Funkcijas programmā Excel var izmantot kopā ar funkciju vedni vai tās var izsaukt no apakšprocedūrām.

123 Funkcija Kilos (mārciņas kā dubultā)Kilo = (mārciņas/2,2)Beigu funkcija

Šo funkciju var izmantot Excel dialoglodziņā Funkcijas ievietošana, lai mārciņas pārvērstu kilogramos.

Jaunas procedūras izveidošana

Pirms jaunas procedūras izveidošanas pārliecinieties, vai atrodaties tajā modulī, kurā vēlaties saglabāt procedūru. Jūs varat izveidot jaunu procedūru, noklikšķinot uz izvēlnes Ievietot, Procedūra;

vai varat rīkjoslā noklikšķināt uz ikonas

Parādīsies šāds dialoglodziņš

  1. Nosaukuma lodziņā ierakstiet jaunās procedūras nosaukumu - tam jāsākas ar alfabēta burtu, un tajā var būt burti un cipari, un tas nedrīkst pārsniegt 64 rakstzīmes.
  2. Jums var būt a Apakšprocedūra, a Funkciju procedūra vai a Īpašums procedūru. (Rekvizīti tiek izmantoti klases moduļos un iestatīti rekvizīti ActiveX vadīklām, kuras, iespējams, esat izveidojis).
  3. Jūs varat arī noteikt procedūras apjomu Publisks vai Privāts. Ja procedūra ir publiska (noklusējuma), tad to var izmantot visi projekta moduļi, savukārt, ja procedūra ir privāta, to varēs izmantot tikai šis modulis.
  4. Šajā procedūrā vietējos mainīgos varat deklarēt kā statiskus (tas ir saistīts ar mainīgā darbības jomu un padara vietējā procedūras līmeņa mainīgo publisku visam modulim). Mēs neizmantosim šo iespēju.

Kad esat aizpildījis visu nepieciešamo informāciju, noklikšķiniet uz labi.

Pēc tam ievadiet savu kodu starp paziņojumiem Sub un End Sub.

ALTERNATĪVI - savā modulī varat ierakstīt apakš- un beigu apakšpaziņojumus tieši tā, kā parādīts iepriekš. Jums nav jāievieto vārds Public vārda sub priekšā - ja šis vārds tiek izlaists, visas moduļa procedūras automātiski tiek uzskatītas par publiskām.

Tad jūs rakstāt Sub un pēc tam jūsu procedūras nosaukums, kam seko iekavas.

ti:

1 Apakštests ()

The Beigu apakš paziņojums parādīsies automātiski.

VBA programmēšana | Kodu ģenerators strādā jūsu labā!

Rakstīšanas kods, kas ir viegli saprotams un navigējams

Komentāru pievienošana

Ieradieties pierakstīt komentārus savā kodā, lai vēlāk atgādinātu par koda funkcionalitāti.

Kodā varat ievietot komentāru, bet tastatūrā ierakstot apostrofu, vai arī ieslēgt rediģēšanas rīkjoslu un izmantot komentāru pogu, kas parādās šajā rīkjoslā.

Ar peles labo pogu noklikšķiniet uz rīkjoslas.

Izvēlieties Rediģēt.

Noklikšķiniet uz komentēšanas pogas, lai kodā ievietotu komentāru.

PIEZĪME: Jūs parasti izmantojat komentāru bloķēšanas pogu tikai tad, ja jums ir dažas koda rindiņas, kuras vēlaties komentēt (nevis dzēst). Vienam komentāram ir vieglāk izmantot apostrofu.

Atkāpe

Labs ieradums ir iekļūt kodā ar atkāpi, lai būtu viegli nolasīt kodu un redzēt dažādas koda daļas.

Atkarībā no koda loģikas var būt daudz atkāpes līmeņu.

Lielie burti pret mazajiem burtiem

VBA pielāgo visu kodu pareizajam burtam, tādēļ, ja jūs ierakstāt VISUS LIELOS burtus vai visus mazos, tas noregulēs jūsu kodu, lai tas būtu pareizajā gadījumā!

VBA programmēšana | Kodu ģenerators strādā jūsu labā!

Automātiskā pabeigšana

Pielāgojot kodu, pamanīsit, ka VBA mēģina jums palīdzēt, iesakot kodu, ko varat ierakstīt. To sauc par automātisko pabeigšanu.

Kļūdu fiksēšana un atkļūdošana

Rakstot VBA kodu, var rasties 4 veidu kļūdas - sintakses kļūdas, apkopošanas kļūdas, izpildlaika kļūdas un loģiskās kļūdas.

Sintakses kļūdas

Tie rodas, ja kodu uzrakstāt nepareizi. VBA to lielā mērā novērš, ieslēdzot sintakses pārbaudes opciju. Parasti tas ir ieslēgts pēc noklusējuma, bet, ja jūsu ierīce ir izslēgta, ieslēdziet to, dodoties uz Rīki, Iespējas un noklikšķiniet Automātiskā sintakses pārbaude.

Ja kodu ievadāt nepareizi (piemēram, izslēdzot kaut ko, kas būtu jāiekļauj kodā), rakstot kodu, parādīsies ziņojumu lodziņš, kas dos jums iespēju kodu labot.

Apkopošanas kļūdas

Tie rodas, ja kodā trūkst kaut kas, kas neļauj kodam darboties. Kļūda nerodas, rakstot kodu, bet tā rodas, mēģinot palaist kodu.

VBA programmēšana | Kodu ģenerators strādā jūsu labā!

Izpildlaika kļūdas

Tie rodas, palaižot kodu, un sintakse un kompilācija ir pareiza, taču notiek kaut kas cits, lai novērstu koda pareizu darbību.

Šajā gadījumā lapa 4 nepastāv. Šis kļūdas ziņojums ir noderīgāks par apkopošanas kļūdas ziņojumiem, jo ​​tas dod jums iespēju atkļūdot kodu un noskaidrot, kāpēc tas nedarbojas.

Klikšķis Atkļūdot. Kods apstāsies pie kļūdas un iezīmēs kļūdu dzeltenā krāsā, ļaujot labot kļūdu.

Izlabojiet 4. lapu uz 2. lapu (jo 2. lapa pastāv un 4. lapa neeksistē).

Nospiediet F5 vai noklikšķiniet uz Turpināt pogu rīkjoslā.

Loģiskās kļūdas

Šos ir visgrūtāk atrast. Viņu gadījumā kods ir uzrakstīts pareizi, bet koda faktiskā loģika ir kļūdaina, tāpēc jūs, iespējams, nesaņemsit no koda vēlamo rezultātu. Loģisku kļūdu gadījumā kļūdu fiksēšana ir būtiska.

Pastāv 2 veidu kļūdu slazdi

Kļūdas gadījumā dodieties uz

Šis kods ir paredzēts, lai atvērtu dialoglodziņu Failu atvēršana - ja lietotājs noklikšķinās, tas parādīs kļūdu Atcelt.

Palaižot kodu, tiek parādīts dialoglodziņš Failu atvēršana.

Pēc tam noklikšķinot uz Atcelt, parādīsies kļūda.

Šis kļūdu slazds turpinās kodu līdz koda iziešanas funkcijai un atgriezīs ziņojumu.

Tas izmanto On Error GoTo, lai izietu no funkcijas.

Palaižot kodu un noklikšķinot uz Atcelt, parādīsies ziņojumu lodziņš.

Par kļūdu Atsākt nākamo

Ja jūs ievietojat Par kļūdu Atsākt nākamo Ievadot kodu, rindiņa, kurā ir kļūda, tiks ignorēta un kods tiks turpināts.

Piemēram, ja lietotājs zemāk esošajā kodā noklikšķina uz Atcelt, kods nesniedz izpildlaika kļūdu, tas vienkārši beidzas, kodam neko nedarot.

Dažos gadījumos tas ir ļoti noderīgi, taču dažos gadījumos tas var būt arī ļoti bīstami, jo tas neatgriež ziņojumu par to, kāpēc jūs saņēmāt kļūdu.

Jums palīdzēs attīstību vietā, daloties lapu ar draugiem

wave wave wave wave wave