Въведение в програмирането за Access

Важно : Тази статия е преведена машинно – вижте отказа от отговорност. Английската версия на тази статия за справка можете да намерите тук .

Когато създавате нова база данни, обикновено започвате със създаване на няколко обекта като таблици, формуляри и отчети. Накрая стигнете точката, където трябва да добавите някои програмиране, за да автоматизирате някои процеси и да гарантирате обекти на бази данни. В тази статия помага да се ориентирате можете да програмиране инструменти в Access 2010.

Забележка : Можете да добавите Visual Basic for Applications (VBA) кодът към уеб база данни; обаче не може да стартирате този код, докато базата данни се изпълнява в уеб браузър. Ако вашата уеб база данни съдържа VBA код, трябва първо да отворите уеб база данни с помощта на Access, преди да изпълните кода. За да изпълните задачи, програмиране в уеб база данни, вместо това използвайте макроси на Access.

За повече информация за уеб базите данни вж. статията Създаване на база данни за споделяне в уеб.

В тази статия

Какво е програмиране?

Трябва ли да използвам макроси или трябва да използвам VBA код?

Използвайте съветника за командни бутони, за да изпълнявате често срещани задачи за програмиране

Разбиране на макроси

Разбиране на VBA код

Преобразуване на макроси на VBA код

Научете как да използвате системата за помощ

Какво е програмиране?

В Access програмиране е процесът на добавяне на функционалност към вашата база данни с помощта на макроси на Access или Visual Basic for Applications (VBA) кодът. Да предположим например, че сте създали формуляр и отчет, и искате да добавите команден бутон към формуляра, който, при щракване върху, отваря отчета. В този случай програмиране, е процесът на създаване на макроси или VBA процедура и след това настройка командния бутон OnClickсвойство на събитие, така че да щракнете върху бутона команда се изпълнява макрос или процедура. За проста задача, като например отваряне на отчет, можете да използвате съветника за командни бутони да свърши цялата работа, или можете да включите изкл съветника и направете програмиране сами.

Забележка : Много програми от Microsoft Office използва термина "макрос", за да препрати към VBA код. Това може да бъде объркващо за потребителите на Access, защото в Access, терминът "макрос" се отнася до наименувана колекция от макрокоманди, които можете да съберете, с помощта на конструктора на макроси. Достъп до макрокоманди представляват само подмножество на командите, достъпни в VBA. Конструктора на макроси ви дава по-структурирана интерфейс от редактора на Visual Basic, което ви позволява да добавите програмиране към контроли и обекти, без да се налага да научите VBA код. Трябва да помните, че в Access помощни статии, Access макросите се наричат макроси. От друга страна VBA код е посочена като VBA, код, функция или процедура. VBA код се съдържа в класа модули (които са част от отделни формуляри или отчети и обикновено съдържат код само за тези обекти) и в модули (които не са свързани към определени обекти и обикновено съдържат "глобален" код, който може да се използва в базата данни).

Обекти (като например формуляри и отчети) и контроли (например командни бутони и текстови полета) имат различни свойства на събитие, към които можете да прикачите макроси или процедури. Всяко събитие свойство е свързан с определено събитие, като щракнете с мишката, отваряне на формуляр или модифициране на данни в текстово поле. Събития също могат да се задейства, от фактори извън достъп, например системни събития, или чрез макроси или процедури, които са прикачени към други събития. Вашата база данни може да стигне сложни, ако добавите много макроси или процедури към няколко събитие свойства на много обекти, но в повечето случаи, можете да постигнете резултатите, които искате с помощта на много малко програмиране.

Най-горе на страницата

Трябва ли да използвам макроси или трябва да използвам VBA код?

Решението да се използват макроси, VBA или и двете зависи предимно как планирате да разположите или разпространение на база данни. Например ако базата данни се съхранява на вашия компютър и сте единственият потребител, и ако сте готови с помощта на VBA код, може да решите да използвате VBA за извършване на ваши програмиране задачи. Въпреки това ако възнамерявате да споделите вашата база данни с други хора чрез намиране на файлов сървър, може да искате да избегнете използването на VBA за съображения за сигурност. Ако възнамерявате да публикувате базата данни като уеб приложение на Access, трябва да използвате макроси вместо VBA за извършване на задачи, програмиране, тъй като VBA е несъвместима с функцията за публикуване на уеб.

Достъп до уеб приложения    Достъп до уеб приложения са нова функция на Access 2010, с които можете да публикувате приложение към Microsoft SharePoint сървър, който се изпълнява Access Services. Позволява на други хора да използват вашата база данни чрез стандартен интернет браузър, вместо да се налага да имат достъп, инсталирана на компютъра си. Въпреки това тъй като VBA код е несъвместима с функцията за публикуване на уеб, ако планирате да публикувате вашето приложение като уеб приложение на Access, трябва да използвате само макроси да изпълнявате задачи, програмиране.

Когато проектирате нов уеб приложения на Access, трябва да започнете като щракнете върху Празна уеб база данни , когато стартирате за първи път достъп. Това ограничава функции, които можете да използвате за създаване на база данни, помага да се гарантира, че уеб приложение ще публикувате успешно.

Клиентски приложения    Ако не планирате да публикувате вашето приложение на Access Services сървър, трябва да базирате решението да Използвайте макроси или VBA кода на два проблема: защита и функционалност, която искате. Защитата е проблем, защото VBA могат да се използват за създаване на код, който или компромиси защитата на вашите данни, или да вреда файловете на вашия компютър. Когато използвате база данни, създадена от някой друг, отколкото себе си, трябва да разрешите VBA код, само ако знаете, че базата данни идва от надежден източник. Когато създавате база данни, която ще се използва от други хора, трябва да опитате да избегнете, включително програмиране инструменти, които изискват от потребителя да предоставите по-конкретно надеждни състоянието на базата данни. Общи техники за избягване на нуждата на потребителите да се доверите на вашата база данни се по-късно в този раздел.

За да се гарантира сигурността на вашата база данни, трябва да се опитате да използвате макросите, когато можете и да използвате VBA програмиране само за операции, които не може да бъде изпълнено с помощта на макрокоманди. Освен това трябва да опитате да използвате само макрокоманди, които не изискват предоставянето на надеждни статут на базата данни да се изпълнява. Ограничаване на използването на макрокоманди по този начин позволява на потребителите да сте сигурни, че базата данни има няма програмиране, който може да вреда данните или други файлове на своите компютри.

Съображения за макрос

Access 2010 съдържа много нови макрокоманди, които ви позволяват да изграждате по-мощни макроси, отколкото можете да създавате с помощта на по-стари версии на Access. Например можете сега да създадете и използвате глобалния временни променливи, като използвате макрокоманди и можете да се справите грешки по-елегантно с помощта на нови действия на макроси на обработване на грешки. В по-ранните версии на Access тези функции са налични само с помощта на VBA. Освен това можете да вградите макрос директно в свойството на събитието на обект или контрола. Вграден макрос става част от обекта или контролата и остава с обекта или контролата, ако то е преместените или копирани.

Макросите предоставят лесен начин да се обработват много задачи за програмиране, като например отваряне и затваряне на формуляри и изпълнение на отчети. Можете да бързо и лесно равенство заедно обектите на базата данни (формуляри, отчети и т.н.), които сте създали, защото има малко синтаксис, който трябва да запомните. Аргументите за всяко действие, се показват в конструктора на макроси.

Освен подобрена сигурност и лесно използване, които предоставят макроси трябва да използвате макросите да изпълнява следните задачи:

  • Присвояване на действие или набор от действия на клавиш. Изисква създаване на група макроси, наречена AutoKeys.

  • Извършва действие или последователност от действия, когато базата данни се отвори за първи път. Изисква създаване на макрос с име AutoExec.

    Забележка : Макроса AutoExec се изпълнява преди други макроси или VBA код, дори ако имате определен формуляр при стартиране в диалоговия прозорец Опции на Access и прикачени макроси или VBA код към този формуляр OnOpen или OnLoad събитие.

За повече информация как да създавате макроси вижте раздела разбиране макроси.

Съображения за VBA

Трябва да използвате VBA програмиране вместо макроси, ако искате да направите някое от следните неща:

  • Използване на вградени функции, или да създадете ваши собствени функции    Достъп до включва много вградени функции, като например IPmt функция, която изчислява лихвеното плащане. Можете да използвате тези вградени функции за извършване на изчисления, без да се налага да създавате сложни изрази. С помощта на VBA код, можете също да създадете ваши собствени функции за извършване на изчисления, надвишаващи възможностите на израз или за заместване на сложни изрази. Освен това можете да използвате функции, които създавате в изрази да приложите общ операция за повече от един обект.

  • Създаване или манипулиране на обекти    В повечето случаи ще намерите, че той е най-лесно да създавате и променяте обект в изглед за проектиране на този обект. В някои случаи обаче може да искате да управлявате дефиницията на обект в код. С помощта на VBA, можете да управлявате всички обекти в база данни, освен самата база данни.

  • Извършване на ниво на системата за действия    Можете да извършвате RunApp действие в макрос, за да използвате друга програма (например Microsoft Excel) в рамките на Access, но не можете да използвате макрос, за да направи много друго извън достъп. С помощта на VBA, можете да проверите дали даден файл не съществува на компютъра, използвайте автоматизация или динамичен обмен на данни (DDE) за комуникация с други Microsoft Windows базирани програми, например Excel и се Присъединете функции Windows библиотеки за динамично свързване (dll).

  • Манипулиране записите един по един    Можете да използвате VBA, за да преминавате през набор от записи, записите един по един и извършване на операция за всеки запис. За разлика от тях макроси работят с целия набор от записи в даден момент.

Най-горе на страницата

Използвайте съветника за командни бутони, за да изпълнявате често срещани задачи за програмиране

Ако добавяте команден бутон към формуляр, съветника за командни бутони могат да ви помогнат да започнете с програмиране. Съветникът ви помага да създадете команден бутон, който извършва конкретна задача. В Access 2010 (.accdb) файл съветникът създава макрос, който е вграден в свойството OnClick на командния бутон. В .mdb или .adp файл съветникът създава VBA код, защото вградени макроси не са налични в тези файлове формати. И в двата случая след това можете да промените или да подобри макроси или VBA кода, за да по-добре отговаря на вашите нужди.

  1. В навигационния екран с десния бутон върху формуляра, към който искате да добавите командния бутон и след това щракнете върху Режим на проектиране.

  2. В раздела проектиране щракнете върху стрелката надолу, за да покажете галерията " контроли " и след това се уверете, че е избрано Използване на съветници за контроли .

  3. В раздела проектиране , в галерията " контроли " щракнете върху бутона.

  4. В мрежата за проектиране на формуляр щракнете там, където искате команден бутон, за да поставите.

    Съветникът за бутони стартира.

  5. На първата страница на съветника щракнете върху всяка категория в списъка категории , за да видите кои действия съветника може да програма командния бутон за изпълнение. В списъка с действия изберете действието, което искате и след това щракнете върху напред.

  6. Щракнете върху опцията текст или картина опция, в зависимост от това дали искате текст или картина, за да бъдат показани в командния бутон.

    • Ако искате текстът да се показва, можете да редактирате текста в полето до опцията текст .

    • Ако искате картина, която да се покаже, съветникът предлага картина в списъка. Ако искате да изберете друга картина, поставете отметка в квадратчето Покажи всички картини да се покаже списък на всички снимки командния бутон, които Access предоставя, или щракнете върху Преглед , за да изберете картина, която е съхранена на друго място.

      Щракнете върху Напред.

  7. Въведете смислено име за командния бутон. Това е незадължителна стъпка, и това име не се показва в командния бутон. Въпреки това е добре да въведете смислено име, така че когато трябва да се отнася за командния бутон по-късно (например, ако задавате на обхождане с табулация за контроли във вашия формуляр), той ще бъде много по-лесно да се прави разлика между командни бутони. Ако командния бутон затваря формуляра, например може да наречете го cmdClose или CommandClose.

  8. Щракнете върху Готово.

    Access поставя бутона във формуляра.

  9. Ако искате да видите какви съветника "програмирани" вместо вас, следвайте тези стъпки, по желание:

    1. Ако списъкът със свойства не е показан, натиснете F4, за да го покажете.

    2. Щракнете върху раздела събитие в списъка със свойства.

    3. В Щракнете върху полето на свойството щракнете върху бутона за изграждане на Изображение на бутон .

      Access стартира конструктора на макроси и показва макроса, създадени от съветника. Можете да редактирате макроса, ако искате (за повече информация как да редактирате макрос, вижте раздела за разбиране макроси). Когато сте готови, в раздела проектиране , в групата затваряне щракнете върху Затвори , за да затворите конструктора на макроси. Ако Access ви подканва да запишете промените и да актуализирате свойството, щракнете върху да, за да запишете промените, или не, за да отхвърлите промени.

  10. В раздела проектиране , в групата изгледи щракнете върху изгледи след това щракнете върху Изглед за формуляри. Щракнете върху нов команден бутон, за да потвърдите, че работи, както сте очаквали.

Най-горе на страницата

Разбиране на макросите

Макросът е инструмент, който ви позволява да автоматизирате задачи и добавяне на функции към вашите формуляри, отчети и контроли. Например ако добавяте команден бутон към формуляр, можете да свържете бутон OnClick свойство на събитие към макрос, съдържащ командите, че искате да изпълнява всеки път, когато бъде щракнат бутонът.

Е полезно да мислите за макроси на Access като опростен програмен език, в който създавате код като съставяне на списък с действия, за да извършите. Когато съставяте макрос, изберете всяко действие от падащия списък и след това попълнете необходимата информация за всяко действие. Макроси ви позволява да добавите функционалност за формуляри, отчети и контроли без писане на код във VBA модул. Макросите предоставят подмножество на командите, които са налични във VBA, и повечето хора е по-лесно да създадете макрос от да напишете VBA код.

Макросите се създават с помощта на конструктора на макроси, който е показан на следващата илюстрация.

Конструкторът на макроси на Access 2010

За да покажете конструктора на макроси:

  • В раздела Създаване, в групата Макроси и код щракнете върху Макрос.

Най-горе на страницата

Разбиране на VBA код

Като макроси VBA ви позволява да добавите автоматизация и други функции за вашето приложение на Access. Можете да разширите VBA с помощта на други контроли, и можете да пишете собствени функции и процедури за конкретни нужди.

Забележка : Можете да добавите Visual Basic for Applications (VBA) кодът към уеб база данни; обаче не може да стартирате този код, докато базата данни се изпълнява в уеб браузър. Ако вашата уеб база данни съдържа VBA код, трябва първо да отворите уеб база данни с помощта на Access, преди да изпълните кода. За да изпълните задачи, програмиране в уеб база данни, вместо това използвайте макроси на Access.

За повече информация за уеб базите данни вж. статията Създаване на база данни за споделяне в уеб.

A бърз начин да започнете с VBA програмиране е да първо изграждане на достъп до макрос и след това го конвертирате в VBA код. Инструкции за това са включени в раздела преобразуване на макроси на VBA код. Тази функция създава нов VBA модул, който извършва аналогични операции в макроса. То също отваря редактора на Visual Basic, така че да можете да започнете да модифицирате процедурата. Когато работите в редактора на Visual Basic, можете да щракнете ключови думи и натиснете клавиша F1, за да стартирате Access за разработчици помощ и Научете повече за всяка ключова дума. Можете да след това Проучете Access за разработчици помощ и Открийте нови команди, за да ви помогне да изпълнявате програмиране задачи, които искате.

Най-горе на страницата

Преобразуване на макроси на VBA код

Можете да използвате Access 2010 за автоматично преобразуване на макроси на VBA модули или клас модули. Можете да преобразувате макроси, които са прикачени към формуляр или отчет, независимо дали те съществуват като отделни обекти или като вградени макроси. Можете също да конвертирате глобални макроси, които не са приложени към конкретния формуляр или отчет.

Забележка : Можете да добавите Visual Basic for Applications (VBA) кодът към уеб база данни; обаче не може да стартирате този код, докато базата данни се изпълнява в уеб браузър. Ако вашата уеб база данни съдържа VBA код, трябва първо да отворите уеб база данни с помощта на Access, преди да изпълните кода. За да изпълните задачи, програмиране в уеб база данни, вместо това използвайте макроси на Access.

За повече информация за уеб базите данни вж. статията Създаване на база данни за споделяне в уеб.

Преобразуване на макроси, които са прикачени към формуляр или отчет

Този процес преобразува в VBA макроси, които са посочени като (или вградени в) формуляр или отчет (или някоя от нейните контроли) и добавя VBA кода за формуляра или отчета модул на клас. Модул на клас става част от формуляра или отчета и премества с формуляра или отчета, ако това е преместените или копирани.

  1. В навигационния екран щракнете с десния бутон, формуляра или отчета и след това щракнете върху режим на проектиране.

  2. В раздела проектиране , в групата инструменти щракнете върху преобразуване на формуляра макроси на Visual Basic или преобразуване на отчет макроси на Visual Basic.

  3. В диалоговия прозорец преобразуване на макроси на формуляр или преобразуване на макроси на отчет изберете дали искате Access да добавите код, за да генерира функциите за отстраняване на грешки. Също така ако имате някакви коментари в макроси, изберете дали искате да ги включени като коментари в функции. Щракнете върху преобразуване да продължите.

    Ако не модул на клас съществува за формуляра или отчета, Access създава едно и добавя процедура за модул за всеки макрос, който е свързан с формуляра или отчета. Достъп също се променя на събитието свойствата на формуляра или отчета, така че да се изпълняват на новите VBA процедури вместо макросите.

  4. За преглед и редактиране на VBA код:

    1. Докато формуляра или отчета все още е отворен в изглед за проектиране, ако списъкът със свойства още не е показан, натиснете F4, за да го покажете.

    2. В раздела събитие на списъка със свойства щракнете в полето на свойството, което показва [Процедура за събитие]и след това щракнете върху бутона компилация Изображение на бутон . За да видите свойствата на събитие за определена контрола, щракнете върху контролата, за да го изберете. За да видите свойствата на събитие за целия формуляр или отчет, изберете формуляр или отчет от падащия списък в горната част на списъка със свойства.

      Access отваря редактора на Visual Basic и показва процедура за събитие в неговия модул на клас. Можете да превъртате нагоре или надолу, за да изглед на други процедури, които са в същия клас модул.

Преобразуване на глобални макроси

  1. В навигационния екран щракнете с десния бутон на макроса, който искате да конвертирате и след това щракнете върху Режим на проектиране.

  2. В раздела проектиране , в групата инструменти щракнете върху преобразуване на макроси на Visual Basic.

  3. В диалоговия прозорец Преобразуване на макрос изберете опциите, които искате и след това щракнете върху Конвертиране.

    Access преобразува макроса и отваря редактора на Visual Basic.

  4. За преглед и редактиране на VBA код:

    1. В редактора на Visual Basic, ако прозореца на проекта не е показан, в менюто изглед щракнете върху Прозорец на проекта.

    2. Разширяване на дървото под името на базата данни, в която работите.

    3. Под модулищракнете двукратно върху модула конвертират макрос - име на макрос.

      Редактора на Visual Basic отваря модула.

Прикачване на VBA функция към свойство на събитие

Когато конвертирате глобалния макроси на VBA, VBA код се поставя в стандартен модул. За разлика от модул на клас стандартен модул не е част от формуляр или отчет. Най-вероятно ще искате да асоциирате функцията със свойство на събитие във формуляр, отчет, или контрол, така че кодът се изпълнява точно когато и където искате. За да направите това, или можете да копирате VBA кода в модул на клас и след това да го свържете с свойство на събитие, или можете да направите специално повикване от свойство на събитие към стандартен модул с помощта на следната процедура.

  1. В редактора на Visual Basic отбележете името на функцията. Например ако сте конвертирали макрос с име MyMacro, името на функцията ще бъде MyMacro().

  2. Затворете редактора на Visual Basic.

  3. В навигационния екран щракнете с десния бутон на формуляр или отчет, с който искате да свържете функцията и след това щракнете върху изглед за проектиране.

  4. Щракнете върху контролата или секцията, с който искате да асоциирате функцията.

  5. Ако списъкът със свойства не е показан, натиснете F4, за да го покажете.

  6. В раздела събитие на списъка със свойства щракнете върху полето на свойството на събитието, с който искате да асоциирате функцията.

  7. В полето на свойството въведете знак за равенство (=), последвано от името на функцията – например, =MyMacro()). Не забравяйте да включите в скобите.

  8. Запишете формуляра или отчета, като щракнете върху Запиши в лентата с инструменти за бърз достъп.

  9. В навигационния екран щракнете двукратно върху формуляра или отчета и Изпробвайте го, за да видите, че кодът се изпълнява както трябва.

Сега знаете основните стъпки за добавяне на VBA код към вашата база данни. Тази статия се описва само основите на как да започнете; има много отлични книги препратка и онлайн ресурси, които могат да ви помогнат да изградите умения за програмиране.

Най-горе на страницата

Научете как да използвате системата за помощ

Access 2010 ви предоставя много начини да получите помощ с вашата програма. Можете да получите помощ по всяко време, като щракнете върху бутона помощ в горния десен ъгъл на прозореца на Access.

бутонът ''помощ''

Access показва прозореца "Помощ".

Освен това когато сте изграждане на макроси или VBA процедура, можете да щракнете Макрокомандата, ключова дума или вградена функция име и след това натиснете клавиша F1. В повечето случаи Access показва помощна тема за елемента, който сте щракнали.

След помощта е отворен прозорец, използвайте бутоните за навигация в лентата с инструменти за придвижване между страниците.

Ленти с инструменти на Help viewer

Например щракнете върху Начало за да видите съдържанието и след това щракнете върху назад, напред, спретеили бутона обновяване за придвижване между теми или да презаредите тема. Можете също да търсите в помощната система за конкретна информация, като въведете думи за търсене в полето под лентата с инструменти и след това натиснете ENTER или щракнете върху търсене.

Когато търсите информация за програмиране, обикновено е полезно да проучите Access за разработчици помощ в допълнение към помощ за достъп.

Превключване към помощ за разработчици на Access

  1. Щракнете върху падащата стрелка до бутона за търсене .

    Бутонът ''Търсене'' в ''Помощ''

    Прозорецът "Помощ" показва списък с налични помощни теми, които можете да преглеждате.

    Списък за търсене в ''Помощ''

  2. Ако сте свързани към интернет, под съдържание от Office.com, щракнете върху Справочни материали за разработчици. Ви препоръчваме да използвате този метод, тъй като съдържание от Office.com винаги е най-актуални. Ако не сте свързани към интернет, или ако вашият системен администратор е забранил възможността на прозореца "Помощ", за да преминете в режим онлайн, пак можете да показвате достъп разработчик помогне като щракнете върху Справочни материали за разработчици под съдържание от този компютър.

  3. Можете да разглеждате помощ с помощта на връзките в таблицата на съдържанието или като въведете думи за търсене в полето точно под лентата с инструменти и след това натиснете ENTER.

  4. За да превключите обратно към помощ за достъп, щракнете върху падащата стрелка до бутона за търсене и след това щракнете върху Помощ за достъп под съдържание от Office.com или съдържание от този компютър.

За повече информация относно използването на офлайн или онлайн помощ щракнете върху менюто състояние на връзката в долния десен ъгъл на прозореца "Помощ" и след това щракнете върху обясняват тези опции.

съобщение на ''състояние на връзката'' в help viewer

Най-горе на страницата

Забележка : Отказ от отговорност за машинен превод: Тази статия е преведена от компютърна система без човешка намеса. Microsoft предлага тези машинни преводи, за да помогне на потребителите, които не говорят английски, да се възползват от съдържанието за продукти, услуги и технологии на Microsoft. Тъй като статията е преведена машинно, е възможно да съдържа грешки в речника, синтаксиса и граматиката.

Разширете уменията си
Преглед на обучението
Получавайте първи новите функции
Присъединете се към участниците в Office Insider

Беше ли полезна тази информация?

Благодарим ви за обратната връзка!

Благодарим ви за вашата обратна връзка. Изглежда, че ще бъде полезно да ви свържем с един от нашите агенти по поддръжката на Office.

×