Applies ToAccess pakalpojumam Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

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ā ir informācija par programmas Access.

Šajā rakstā

Kas ir programmēšana?

Programmēšanā Access funkcionalitātes pievienošana datu bāzei, izmantojot 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 mulsinoties ar Access lietotājiem, jo programmā Access termins "makro" attiecas uz nosauktu makro darbību kolekciju, kuras var apvienot, izmantojot Makro veidotāju. Access darbības attēlo tikai VBA pieejamo komandu apakškopu. 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 Access makro dēvē par 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ī faktori ārpus Access, piemēram, sistēmas notikumi, vai citiem notikumiem pievienoti makro vai 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

Access iekļautas daudzas jaunas makro darbības, kas ļauj izveidot jaudīgākus makro nekā izmantojot vecākās makro Access. 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 programmas Access šie līdzekļi ir pieejami tikai, izmantojot 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.

  • Izmantojiet iebūvētās funkcijas vai    izveidojiet savas funkcijas,Access iekļautas daudzas iebūvētas funkcijas, piemēram, funkcija IPmt , kura aprēķina procentu maksājumus. Varat izmantot šīs iebūvētās funkcijas, lai veiktu aprēķinus bez sarežģītu izteiksmju izveides. Izmantojot VBA kodu, varat arī izveidot savas funkcijas, lai veiktu aprēķinus, kas pārsniedz izteiksmes iespējas, vai aizstātu sarežģītas izteiksmes. Turklāt varat izmantot funkcijas, kuras izveidojat izteiksmēs, lai lietotu kopīgu operāciju vairākiem objektiem.

  • 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 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. Faila Access (.accdb) 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ē Formas noformējums noklikšķiniet uz lejupvērstās bultiņas, lai parādītu galeriju Vadīklas, un pēc tam pārliecinieties, vai ir atlasīta opcija Lietot vadīklu vedņus.

  3. Cilnes Formas 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 parādītu sarakstu ar visiem komandpogu attēliem, ko piedāvā Access, 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 novieto 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 Izveidot un Pogas attēls.

      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 pabeidzis, cilnes Makro noformējums grupā Aizvērt noklikšķiniet uz Aizvērt , lai aizvērtu Makro veidotāju. Ja Access parādīts uzaicinājums saglabāt izmaiņas un atjaunināt rekvizītu, noklikšķiniet uz Jā, lai saglabātu izmaiņas, vai uz Nē, lai izmaiņas noraidītu.

  10. Cilnes Formas 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 makro var domāt Access par vienkāršotu programmēšanas valodu, ar kuru var izveidot 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

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 jūsu datoram pievienotu automatizāciju Access 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 Access makro un pēc tam to konvertējiet 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. Strādājot ar Visual Basic redaktoru, varat noklikšķināt uz atslēgvārdiem un nospiest taustiņu F1, lai sāktu Access izstrādātāju palīdzību un iegūtu papildinformāciju par katru atslēgvārdu. Pēc tam varat izpētīt Access palīdzību izstrādātājiem un atklāt jaunas komandas, kas palīdzēs veikt 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.

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 Formas 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ēšanavai Atskaites makro konvertēšana norādiet, vai 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ītam makro modulī pievieno procedūru. Access arī maina formas vai atskaites notikumu rekvizītus, lai tie palaistu jaunās VBA procedūras, 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 būvējuma 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.

      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 Makro 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.

Skatiet arī

Lietotāja interfeisa (UI) makro izveide

Access makro palaišana, izmantojot īsinājumtaustiņus

Sākšanas notikumu automatizēšana ar makro

Tāda makro izveide, kas tiek izpildīts, atverot datu bāzi

Notikumu secība datu bāzes objektiem

Uz lapas sākumu

Nepieciešama papildu palīdzība?

Vēlaties vairāk opciju?

Izpētiet abonementa priekšrocības, pārlūkojiet apmācības kursus, uzziniet, kā aizsargāt ierīci un veikt citas darbības.

Kopienas palīdz uzdot jautājumus un atbildēt uz tiem, sniegt atsauksmes, kā arī saņemt informāciju no ekspertiem ar bagātīgām zināšanām.