Ievads Access programmēšanā

Lai izveidotu jaunu datu bāzi, parasti sāk ar dažu datu bāzes objektu, piemēram, tabulu, formu un atskaišu, izveidi. Tomēr pēc kāda brīža būs jāveic dažas programmēšanas darbības, lai automatizētu noteiktus procesus un sasaistītu datu bāzes objektus. Šajā rakstā sniegtā informācija palīdzēs orientēties programmas Access programmēšanas rīkos.

Šajā rakstā

Kas ir programmēšana?

Vai man jāizmanto makro vai VBA kods?

Bieži veicamo programmēšanas uzdevumu izpilde, izmantojot Komandpogu vedni

Informācija par makro

Informācija par VBA kodu

Makro konvertēšana par VBA kodu

Kas ir programmēšana?

Programmā Access programmēšanas darbības varat izmantot, lai datu bāzei pievienotu funkcionalitāti, — varat izvēlēties Access makro vai Visual Basic for Applications (VBA) kodu. Pieņemsim, ka esat izveidojis formu un atskaiti un vēlaties pievienot formai komandpogu, uz kuras noklikšķinot tiktu atvērta atskaite. Šajā gadījumā par programmēšanu dēvē procesu, kura gaitā tiek izveidota makro vai VBA procedūra un pēc tam iestatīts komandpogas notikuma rekvizīts OnClick, lai pēc komandpogas noklikšķināšanas palaistu makro vai procedūru. Vienkāršu darbību veikšanai, piemēram, atskaites atvēršanai, varat izvēlēties izmantot Komandpogu vedni vai arī to izslēgt un veikt programmēšanas darbības manuāli.

Piezīme : Daudzās Microsoft Office programmās ar terminu “makro” tiek apzīmēts VBA kods. Tas var mulsināt programmas Access lietotājus, jo tajā ar terminu “makro” tiek apzīmēta makro darbību kopa, kurā darbības apvienotas, izmantojot Makro veidotāju. Programmas Access makro darbības aptver tikai vienu no VBA pieejamo komandu apakškopām. Makro veidotājs nodrošina strukturētāku interfeisu nekā Visual Basic redaktors, un ar to var programmēt vadīklas un objektus bez nepieciešamības apgūt VBA kodu. Ņemiet vērā, ka Access palīdzības rakstos, runājot par Access makro, tiek lietots termins “makro”. Savukārt VBA kods tiek dēvēts par VBA, kodu, funkciju vai procedūru. VBA kods ir iekļauts klases moduļos (kas ir atsevišķu formu vai atskaišu daļa un parasti ietver tikai šo objektu kodu) un moduļos (kas nav saistīti ar konkrētiem objektiem un parasti ietver “globālo” kodu, ko var izmantot visā datu bāzē).

Objektiem (piemēram, formām un atskaitēm) un vadīklām (piemēram, komandpogām un tekstlodziņiem) ir dažādi notikumu rekvizīti, un tiem varat pievienot makro vai procedūras. Katrs notikuma rekvizīts ir saistīts ar konkrētu notikumu, piemēram, peles klikšķi, formas atvēršanu vai datu modificēšanu tekstlodziņā. Notikumus var izraisīt arī no Access neatkarīgi faktori, piemēram, sistēmas notikumi, vai citiem notikumiem pievienoti makro un procedūras. Ja vairākiem dažādu objektu notikumu rekvizītiem pievienosit daudzus makro un procedūras, datu bāze var kļūt sarežģīta, taču vairākumā gadījumu vēlamos rezultātus var iegūt, izmantojot tikai dažas programmēšanas darbības.

Uz lapas sākumu

Vai man jāizmanto makro vai VBA kods?

Izvēle izmantot makro, VBA vai abus galvenokārt ir atkarīga no plānotā datu bāzes izvietojuma un izplatīšanas veida. Piemēram, ja datu bāzi glabājat datorā, esat tās vienīgais lietotājs un protat izmantot VBA kodu, lielākajai daļai programmēšanas uzdevumu varat izvēlēties VBA. Turpretī, ja plānojat koplietot datu bāzi ar citiem un noteikt tās atrašanās vietu failu serverī, drošības apsvērumu dēļ iesakām neizmantot VBA.

Lēmums par makro vai VBA koda izmantošanu jāpieņem, ņemot vērā divus aspektus: vajadzīgo drošības līmeni un funkcionalitāti. Drošība ir svarīgs jautājums, jo ar VBA var izveidot kodu, kas apdraud jūsu datu drošību un var kaitēt datorā saglabātajiem failiem. Ja izmantojat citas personas veidotu datu bāzi, VBA kods jāiespējo vienīgi tad, ja zināt, ka datu bāzes avots ir uzticams. Gadījumos, kad veidojat datu bāzi, kuru lietos citi, ieteicams neizmantot tādus programmēšanas rīkus, kas pieprasa, lai lietotāji datu bāzei piešķirtu uzticamu statusu. Vispārējie paņēmieni, kā izvairīties no prasības lietotājiem uzticēties datu bāzei, ir aprakstīti tālāk šajā sadaļā.

Lai nodrošinātu datu bāzes drošību, izmantojiet VBA programmēšanu vienīgi tad, ja nepieciešamās darbības nevar izpildīt ar makro darbībām. Turklāt ieteicams izmantot tikai tās makro darbības, kas pirms datu bāzes palaišanas nepieprasa piešķirt tai uzticamu statusu. Ja makro darbība tiek šādā veidā ierobežota, lietotāji var būt droši, ka datu bāze ir programmēta tā, ka tā nekaitēs datorā esošajiem datiem un citiem failiem.

Makro izmantošanas apsvērumi

Sākot ar Access 2010 laidienu, programmā Access ir iekļauts daudz jaunu makro darbību, ar kurām var izveidot efektīvākus makro nekā iepriekšējās programmas Access versijās. Tagad ar makro darbībām varat izveidot un izmantot globālus pagaidu mainīgos, kā arī efektīvāk novērst kļūdas, izmantojot jaunās kļūdu novēršanas makro darbības. Iepriekšējās Access versijās šīs funkcijas bija pieejamas vienīgi ar VBA. Turklāt varat iegult makro tieši objekta vai vadīklas notikuma rekvizītā. Iegultais makro kļūst par objekta vai vadīklas daļu un, pārvietojot vai kopējot šo objektu vai vadīklu, tiek pārvietots vai kopēts kopā ar to.

Izmantojot makro, varat viegli paveikt dažādus programmēšanas uzdevumus, piemēram, atvērt un aizvērt formas un palaist atskaites. Jūs varat ātri un vienkārši sasaistīt izveidotos datu bāzes objektus (formas, atskaites u.c.), jo nav jāiegaumē pārāk daudz sintakses nosacījumu. Katras darbības argumenti tiek parādīti Makro veidotājā.

Makro nodrošina paaugstinātu drošību un ērtu lietošanu, un tie ir jāizmanto šādu darbību veikšanai:

  • Darbības vai darbību kopas piešķiršana atslēgai. Lai to izdarītu, jāizveido makro grupa ar nosaukumu AutoKeys.

  • Darbības vai darbību sērijas izpilde, pirmo reizi atverot datu bāzi. Lai to izdarītu, jāizveido makro ar nosaukumu AutoExec.

    Piezīme :  Makro AutoExec tiek palaists pirms citiem makro vai VBA koda pat tad, ja dialoglodziņā Access opcijas esat iestatījis startēšanu un pievienojis makro vai VBA kodu šīs formas notikumam OnOpen vai OnLoad.

Papildinformāciju par to, kā izveidot makro, skatiet sadaļā Informācija par makro.

VBA izmantošanas apsvērumi

Tālāk norādītās darbības ieteicams veikt, izmantojot VBA programmēšanu, nevis makro.

  • Iebūvēto funkciju izmantošana vai savu funkciju izveide Programmā Access ir daudz iebūvētu funkciju, piemēram, funkcija IPmt, kas aprēķina procentu maksājumus. Iebūvētās funkcijas varat izmantot, lai veiktu aprēķinus bez nepieciešamības veidot sarežģītas izteiksmes. Izmantojot VBA kodu, varat arī izveidot funkcijas, lai veiktu aprēķinus, kas pārsniedz izteiksmes iespējas, vai aizstātu sarežģītas izteiksmes. Turklāt savas izteiksmēs izveidotās funkcijas varat izmantot, lai ar vairākiem objektiem veiktu to pašu darbību.

  • Objektu izveide un darbošanās ar tiem.    Vairākumā gadījumu objektu ir vieglāk izveidot un modificēt šī objekta noformējuma skatā. Tomēr dažos gadījumos, iespējams, vēlēsities darboties ar kodā esošo objekta definīciju. Izmantojot VBA, varat darboties gan ar datu bāzi, gan ar visiem tajā esošajiem objektiem.

  • Sistēmas līmeņa darbību veikšana.    Varat izmantot makro darbību RunApp, lai programmā Access palaistu citu programmu (piemēram, Microsoft Excel), taču makro nevar izmantot, lai veiktu darbības ārpus programmas Access. Izmantojot VBA, varat: pārbaudīt, vai datorā ir fails; izmantot automatizāciju vai dinamisko datu apmaiņu (DDE), lai veidotu savienojumu ar citām Microsoft Windows vides programmām, piemēram, Excel; un izsaukt Windows dinamisko saišu bibliotēku (DLL) funkcijas.

  • Darbošanās ar katru ierakstu atsevišķi.    Varat izmantot VBA, lai pārskatītu ierakstu kopu, vienlaikus apstrādājot vienu ierakstu, un katrā ierakstā veiktu darbību. Turpretī, izmantojot makro, varat darboties ar visu ierakstu kopu vienlaikus.

Uz lapas sākumu

Bieži veicamo programmēšanas uzdevumu izpilde, izmantojot Komandpogu vedni

Ja vēlaties formai pievienot komandpogu, programmēšanas darbību uzsākšanā var noderēt Komandpogu vednis. Vednis palīdz izveidot komandpogu noteikta uzdevuma izpildei. Access (.accdb) failā vednis izveido komandpogas rekvizītā OnClick iegultu makro. Savukārt .mdb vai .adp failā vednis izveido VBA kodu, jo iegulti makro šajos faila formātos nav pieejami. Abos gadījumos vēlāk varat makro vai VBA kodu modificēt vai uzlabot, lai tas labāk atbilstu jūsu vajadzībām.

  1. Navigācijas rūtī ar peles labo pogu noklikšķiniet uz formas, kurai vēlaties pievienot komandpogu, un pēc tam noklikšķiniet uz Noformējuma skats.

  2. Cilnē Noformējums noklikšķiniet uz lejupvērstās bultiņas, lai parādītu galeriju Vadīklas; komandai Lietot vadīklu vedņus jābūt atlasītai.

  3. Cilnes Noformējums galerijā Vadīklas noklikšķiniet uz Poga.

  4. Formas noformējuma režģī noklikšķiniet vietā, kur vēlaties novietot komandpogu.

    Tiek atvērts Komandpogu vednis.

  5. Vedņa pirmajā lapā noklikšķiniet uz katras sarakstā Kategorijas norādītās kategorijas, lai redzētu, kādas darbības vednis var piešķirt komandpogai. Sarakstā Darbības atlasiet vajadzīgo darbību un pēc tam noklikšķiniet uz Tālāk.

  6. Atkarībā no tā, kam jātiek parādītam uz komandpogas, noklikšķiniet uz opcijas Teksts vai Attēls.

    • Ja vēlaties, lai tiktu parādīts teksts, lodziņā blakus opcijai Teksts varat rediģēt tekstu.

    • Ja vēlaties, lai tiktu parādīts attēls, vednis attēlu sarakstā ieteiks attēlu. Ja vēlaties atlasīt citu attēlu, atzīmējiet izvēles rūtiņu Rādīt visus attēlus, lai redzētu sarakstu ar visiem Access piedāvātajiem komandpogu attēliem, vai noklikšķiniet uz Pārlūkot, lai atlasītu attēlu, kas ir saglabāts citur.

      Noklikšķiniet uz Tālāk.

  7. Ierakstiet jēgpilnu komandpogas nosaukumu. Šī darbība nav obligāta, un nosaukums uz komandpogas rādīts netiek. Tomēr ieteicams ievadīt jēgpilnu nosaukumu, lai vēlāk būtu vieglāk atšķirt komandpogas, ja uz kādu no tām būs jāatsaucas (piemēram, ja formā iestatīsit vadīklu tabulēšanas secību). Ja komandpoga ir paredzēta, piemēram, formas aizvēršanai, varat to nosaukt kā cmdClose vai CommandClose.

  8. Noklikšķiniet uz Pabeigt.

    Access ievieto komandpogu formā.

  9. Ja vēlaties apskatīt, ko vednis ir “ieprogrammējis”, veiciet šīs izvēles darbības:

    1. Ja rekvizītu lapa vēl nav redzama, nospiediet taustiņu F4, lai to parādītu.

    2. Rekvizītu lapā noklikšķiniet uz cilnes Notikums.

    3. Rekvizīta lodziņā Pēc klikšķa noklikšķiniet uz pogas Izveide Pogas attēls .

      Programma Access startē Makro veidotāju un parāda vedņa izveidoto makro. Ja vēlaties, makro varat rediģēt (papildinformāciju par makro rediģēšanu skatiet sadaļā Informācija par makro). Kad esat beidzis darbu, cilnes Noformējums grupā Aizvērt noklikšķiniet uz Aizvērt, lai aizvērtu Makro veidotāju. Ja programmā Access tiek parādīts uzaicinājums saglabāt izmaiņas un atjaunināt rekvizītu, noklikšķiniet uz , lai saglabātu izmaiņas, vai uz , lai izmaiņas noraidītu.

  10. Cilnes Noformējums grupā Skati noklikšķiniet uz Skats un pēc tam — uz Formas skats. Noklikšķiniet uz jaunās komandpogas, lai pārliecinātos, vai tā darbojas, kā paredzēts.

Uz lapas sākumu

Informācija par makro

Makro ir rīks, kas palīdz automatizēt uzdevumus un pievienot funkcionalitāti formām, atskaitēm un vadīklām. Piemēram, ja vēlaties formai pievienot komandpogu, jums jāsaista pogas notikuma rekvizīts OnClick ar makro, kurā ir komandas, kuras vēlaties veikt ar katru pogas klikšķi.

Par Access makro var domāt kā par vienkāršotu programmēšanas valodu, ar kuru var uzrakstīt kodu, izveidojot veicamo darbību sarakstu. Veidojot makro, nolaižamajā sarakstā ir jāatlasa katra darbība un pēc tam par katru darbību jāievada nepieciešamā informācija. Izmantojot makro, formām, atskaitēm un vadīklām varat pievienot funkcionalitāti bez nepieciešamības VBA modulī rakstīt kodu. Makro nodrošina VBA pieejamo komandu apakškopu, un lielākajai daļai cilvēku vieglāk ir izveidot makro nekā uzrakstīt VBA kodu.

Makro varat izveidot ar Makro veidotāju, kura attēls redzams tālāk.

Programmas Access 2010 makro veidotājs

Piezīme : Ņemiet vērā, ka programmā Access 2007 iekļautais Makro veidotājs atšķiras no iepriekšējā attēlā redzamās versijas. Access 2007 Makro veidotājam ir vairākas rindas un kolonnas, kurās norādītas dažādas makro darbības.

Lai atvērtu Makro veidotāju:

  • Cilnes Izveide grupā Makro un kods noklikšķiniet uz Makro.

Uz lapas sākumu

Informācija par VBA kodu

Līdzīgi kā makro, arī VBA varat izmantot, lai Access programmā pievienotu automatizāciju un citu funkcionalitāti. Varat paplašināt VBA, izmantojot trešās personas vadīklas, kā arī atbilstoši vajadzībām rakstīt savas funkcijas un procedūras.

VBA programmēšanu var viegli uzsākt, vispirms izveidojot Access makro un pēc tam to konvertējot par VBA kodu. Norādījumus par to, kā to izdarīt, skatiet sadaļā Makro konvertēšana par VBA kodu. Ar šo līdzekli varat izveidot jaunu VBA moduli, kas veic tādas pašas darbības kā makro. Tiek atvērts arī Visual Basic redaktors, lai jūs varētu sākt modificēt procedūru. Kad strādājat ar Visual Basic redaktoru, varat noklikšķināt uz atslēgvārda un nospiest taustiņu F1, lai palaistu Access izstrādātāju palīdzību un skatītu papildinformāciju par katru atslēgvārdu. Pēc tam varat izpētīt Access izstrādātāju palīdzību un uzzināt par jaunām komandām, kas palīdzēs veikt nepieciešamos programmēšanas uzdevumus.

Uz lapas sākumu

Makro konvertēšana par VBA kodu

Varat izmantot Access, lai automātiski konvertētu makro par VBA moduļiem vai klases moduļiem. Formai vai atskaitei pievienotus makro varat konvertēt neatkarīgi no tā, vai tie ir atsevišķi objekti vai iegulti makro. Varat arī konvertēt globālus makro, kas nav pievienoti konkrētai formai vai atskaitei.

Piezīme : Visual Basic for Applications (VBA) kodu varat pievienot tīmekļa datu bāzei, taču, kamēr datu bāze darbosies tīmekļa pārlūkā, kodu nevarēs izpildīt. Ja tīmekļa datu bāzē ir VBA kods, pirms koda izpildes tīmekļa datu bāze ir jāatver, izmantojot programmu Access. Lai tīmekļa datu bāzē veiktu programmēšanas uzdevumus, izmantojiet Access makro.

Formai vai atskaitei pievienotu makro konvertēšana

Šajā procesā visi makro, uz kuriem ir izveidota formas vai atskaites (vai kādas tās vadīklas) atsauce (vai kuri ir iegulti), tiek konvertēti par VBA un VBA kods tiek pievienots formas vai atskaites klases modulim. Klases modulis kļūst par formas vai atskaites daļu un, pārvietojot vai kopējot šo formu vai atskaiti, tiek pārvietots vai kopēts kopā ar to.

  1. Navigācijas rūtī ar peles labo pogu noklikšķiniet uz formas vai atskaites un pēc tam noklikšķiniet uz Noformējuma skats.

  2. Cilnes Noformējums grupā Rīki noklikšķiniet uz Konvertēt formas makro par Visual Basic vai Konvertēt atskaites makro par Visual Basic.

  3. Dialoglodziņā Formas makro konvertēšana vai Atskaites makro konvertēšana norādiet, vai vēlaties Access ģenerētajām funkcijām pievienot kļūdu apstrādes kodu. Ja savos makro esat veicis piezīmes, norādiet, vai vēlaties tās iekļaut funkcijās kā komentārus. Lai turpinātu, noklikšķiniet uz Konvertēt.

    Ja formai vai atskaitei nav neviena klases moduļa, Access to izveido un katram ar formu vai atskaiti saistītajam makro modulī pievieno procedūru. Programmā Access var arī veikt izmaiņas formas vai atskaites notikuma rekvizītos, lai VBA procedūras palaistu notikuma rekvizīti, nevis makro.

  4. Lai skatītu un rediģētu VBA kodu:

    1. Neaizverot formas vai atskaites noformējuma skatu, pārbaudiet, vai ir redzama rekvizītu lapa — ja nav, nospiediet taustiņu F4, lai to parādītu.

    2. Rekvizītu lapas cilnē Notikums noklikšķiniet jebkurā rekvizīta lodziņā, kurā ir [Notikuma procedūra], un pēc tam noklikšķiniet uz izveidošanas pogas Pogas attēls . Lai skatītu konkrētās vadīklas notikuma rekvizītus, atlasiet vadīklu, uz tās noklikšķinot. Lai skatītu visas formas vai atskaites notikumu rekvizītus, rekvizītu lapas augšdaļā nolaižamajā sarakstā atlasiet Forma vai Atskaite.

      Programma Access atver Visual Basic redaktoru un notikuma klases modulī parāda notikuma procedūru. Varat ritināt uz augšu vai leju, lai skatītu citas tās pašas klases moduļa procedūras.

Globālo makro konvertēšana

  1. Navigācijas rūtī ar peles labo pogu noklikšķiniet uz makro, ko vēlaties konvertēt, un pēc tam noklikšķiniet uz Noformējuma skats.

  2. Cilnes Noformējums grupā Rīki noklikšķiniet uz Konvertēt makro par Visual Basic.

  3. Dialoglodziņā Makro konvertēšana atlasiet vajadzīgās opcijas un pēc tam noklikšķiniet uz Konvertēt.

    Access konvertē makro un atver Visual Basic redaktoru.

  4. Lai skatītu un rediģētu VBA kodu:

    1. Ja netiek atvērta projekta pētnieka rūts, Visual Basic redaktora izvēlnē Skats noklikšķiniet uz Projekta pētnieks.

    2. Zem attiecīgās datu bāzes nosaukuma izvērsiet koku.

    3. Sadaļā Moduļi veiciet dubultklikšķi uz moduļa Konvertētie makro makro nosaukuma.

      Visual Basic redaktors atver moduli.

VBA funkcijas pievienošana notikuma rekvizītam

Konvertējot globālo makro par VBA, VBA kods tiek ievietots standarta modulī. Atšķirībā no klases moduļa standarta modulis nav formas vai atskaites daļa. Visticamāk, funkciju vēlēsities saistīt ar formas, atskaites vai vadīklas notikuma rekvizītu, lai koda izpilde notiktu jums nepieciešamajā laikā un vietā. Lai to izdarītu, varat kopēt VBA kodu klases modulī un pēc tam to saistīt ar notikuma rekvizītu vai arī veikt īpašu izsaukumu no notikuma rekvizīta uz standarta moduli, veicot tālāk aprakstīto procedūru.

  1. Visual Basic redaktorā pierakstiet funkcijas nosaukumu. Piemēram, ja konvertējāt makro ar nosaukumu ManiMakro, funkcijas nosaukums būs ManiMakro ().

  2. Aizveriet Visual Basic redaktoru.

  3. Navigācijas rūtī ar peles labo pogu noklikšķiniet uz formas vai atskaites, kuru vēlaties saistīt ar funkciju, un pēc tam noklikšķiniet uz Noformējuma skats.

  4. Noklikšķiniet uz vadīklas vai sadaļas, kuru vēlaties saistīt ar funkciju.

  5. Ja rekvizītu lapa vēl nav redzama, nospiediet taustiņu F4, lai to parādītu.

  6. Rekvizītu lapas cilnē Notikums noklikšķiniet uz tā notikuma rekvizīta lodziņa, kuru vēlaties saistīt ar funkciju.

  7. Rekvizīta lodziņā ierakstiet vienādības zīmi (=) un pēc tās — funkcijas nosaukumu, piemēram, =ManiMakro(). Noteikti iekļaujiet iekavas.

  8. Saglabājiet formu vai atskaiti, ātrās piekļuves rīkjoslā noklikšķinot uz Saglabāt.

  9. Navigācijas rūtī veiciet dubultklikšķi uz formas vai atskaites un pārbaudiet, vai kods darbojas, kā paredzēts.

Tagad jūs zināt pamatdarbības, kas veicamas, lai jūsu datu bāzei pievienotu VBA kodu. Šajā rakstā ir izklāstīta tikai pamatinformācija par darba sākšanu; programmēšanas prasmes varat attīstīt, izmantojot kādu no daudzajām lieliskajām rokasgrāmatām un tiešsaistes resursiem.

Uz lapas sākumu

Paplašiniet savas prasmes
Iepazīties ar apmācību
Esiet pirmais, kas saņem jaunās iespējas
Pievienoties Office Insider programmai

Vai šī informācija bija noderīga?

Paldies par jūsu atsauksmēm!

Paldies par atsauksmēm! Šķiet, ka varētu būt noderīgi sazināties ar kādu no mūsu Office atbalsta aģentiem.

×