Файл: Освой самостоятельно программирование для MS Access 2002 за 24 часа [П.Киммел].pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 21.10.2020

Просмотров: 7918

Скачиваний: 25

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

В строке 4 объявляется переменная FileName, которая предназначена

I для хранения имени импортируемого файла. Это имя вводится пользова-

телем в диалоговом окне, открываемом при выполнении строки 5. Стро-

ка 6 содержит вызов макрокоманды импорта, использующей определен-

ную ранее спецификацию.

Макросы: быть или не быть

С точки зрения профессионального программиста, ответ на вопрос, использовать

макросы или код VBA, однозначен — конечно, код. Макросы необходимы тем, кто не

любит или не умеет программировать. Макросы можно также рассматривать как удоб-

ное средство проведения экспериментов с различными командами (такими как

ferText) и их аргументами. Макросы в чистом виде редко оказываются способными

обеспечить полноценное и надежное решение — так или иначе их следует дополнять

программными средствами анализа ошибок и динамического изменения данных.

Существенным преимуществом макросов является то, что их легко записать, а за-

тем преобразовать в VBA-код и сохранить в модуле. Для преобразования макроса в

код выполните следующие действия.

1. Выберите Макросы из списка Объекты.

2. Щелкните правой кнопкой мыши на макросе, который нужно преобразовать и вы-

берите Сохранить как (Save As).

3. В диалоговом окне Сохранение (Save As) задайте имя и в списке Как (As) отметьте

Модуль (Module). Щелкните на кнопке ОК.

4. В диалоговом окне Преобразования макроса (Convert) оставьте параметры, задан-

ные по умолчанию.

Щелкните на кнопке Преобразовать (Convert) — будет создан модуль и откроется

редактор Visual Basic. В листинге 9.3 приведен пример макроса Backup Concordance,

преобразованный в VBA-код.

Листинг 9.3. Макрос Backup Concordance, преобразованный в

1:
2 :

 .

4 :
5:

7:

8:

9:

10

Option Compare Database
Option Explicit

\

 ______________

 _____

Function

On Error GoTo Backup_Concordance_Err

:

 "Concordance Backup", acTable,

11

14
15

18
19:

 Function

: Exit Function
:

 Error$

: Resume Backup_Concordance_Exit

9-й час. Работа с макросами

175


background image

Преобразование макроса в код — обычное явление. Наиблее важен код

строки 10, содержащий команду

 Все остальное —

процедуры обработки ошибок, отображающее содержимое объекта

Error. Код макросов, генерируемый VBA, рекомендуется использовать

для обучения, обычно он грешит многословием. Написание кода дает

вам больший простор для творчества. Начните с создания макросов. Если
с их помощью не удалось решить поставленную задачу или обеспечить

достаточную защиту от ошибок, преобразуйте макрос с

 и

внесите необходимые изменения.

Резюме

В ходе этого занятия вы ознакомились со средствами окна проектирования макро-

сов, научились выбирать макрокоманды и задавать значения их аргументов. Макро-

сы — достаточно полезный и мощный инструмент. Они находят наилучшее примене-
ние в качестве средства обучения основам программирования и быстрого тестирова-

ния предварительных решений.

Запомните: прежде, чем передать заказчику готовое решение, желательно преобра-

зовать все макросы в код с помощью методов объекта DoCmd. Код на языке VBA более
управляем и прозрачен. Он позволяет применять средства анализа ошибок и динами-
ческого изменения данных.

Макросы — это полезное вспомогательное орудие. Но вы ведь планируете нау-

читься программировать по-настоящему, не так ли? Что ж, тогда вперед!

Вопросы и ответы

Вопрос. В каких случаях есть смысл обращаться именно к макросам?

Ответ.

 Макросы — это неплохой выбор, если вам необходимо решить небольшую

задачу, не требующую написания отдельной программы на языке VBA.

Вопрос. Существуют ли операции, которые можно выполнить с помощью макросов, но

нельзя — посредством программного кода?

Ответ.

 Нет. Макросы полезны и достаточно мощны, но программа на языке VBA

способна на большее. Технология макропрограммирования довольно стара, и не ис-

ключено, что со временем она просто исчезнет с небосклона Microsoft Office.

Вопрос. Существуют ли другие объекты, подобные

 DoCmd,

 которые целесообразно

применять в качестве альтернативы макросам?

Ответ.

 Безусловно. VBA — это объектно-ориентированный язык программирова-

ния, и в его арсенале имеется множество любопытных и мощных классов. Вы навер-
няка получите немалое удовольствие от исследования возможностей объектов Appli-
cation и CurrentDb.

Вопрос. Каким образом можно изучить все те инструменты и средства, которые Access

предлагает мне как программисту?

Ответ.

 Сложный вопрос. Средства программирования для Access весьма обширны

и многообразны, поэтому о скорой победе говорить не приходится. Книги, подобные

нашей, практика, общение с коллегами, файлы оперативной справочной системы,
информационные хранилища Internet — вот ваши лучшие советчики на трудном пути

профессионального взросления.

 Часть III. Использование ресурсов Access


background image

Задания

Ниже приведены тестовые задания и упражнения, которые помогут вам самостоя-

тельно проверить уровень освоения материала, изложенного в этой главе. Ответы на

вопросы вы найдете в приложении.

Тесты

1. Какую команду следует применять для импорта данных из таблицы Excel?

2. Как создается

 импорта данных?

3. Какая команда использует спецификацию импорта данных?
4. Как называется объект, применяемый для программирования макрокоманд в коде?
5. Могут ли объекты, подобные

 применяться в программах, ориентированных

на использование с другими приложениями Office?

1. Создайте макрос для резервного копирования всех таблиц базы данных.

2. Напишите фрагмент кода, позволяющего пользователю ввести наименование фай-

ла, данные из которого предполагается импортировать.

3. Напишите код, аналогичный описанному выше макросу создания резервной копии.

9-й час. Работа с макросами


background image

background image

 час

Как использовать

готовые решения

Задача создания программы для среды Access предполагает использование языка

Microsoft Visual Basic for Applications (VBA). VBA поддерживается всеми приложения-
ми из состава Microsoft Office XP. Если ранее вы уже работали с языком программи-

рования Visual Basic, проблема освоения VBA не станет для вас серьезным препятст-
вием. Наоборот, если вы уже знакомы с VBA (надеемся, теперь можно об этом гово-
рить), вам легко будет совладать и с Visual Basic.

Первым прототипом VBA послужил язык программирования PDP-11

разработанный Биллом Гейтсом (Bill Gates) и Полем

 (Paul Allen) и перене-

сенный в начале 70-х на компьютерную платформу MIPS

 Затем были ROM

BASIC,

 BASIC for DOS, первая версия Visual Basic for DOS и Visual Basic

for Windows. Сейчас существует уже шестая версия VB for Windows. VBA можно счи-
тать наследником и преемником всех упомянутых реализаций и версий языка BASIC.

Возможно, благодаря длительной и неоднозначной истории своего развития VBA

обладает теперь мощными, выразительными и простыми для изучения средствами,
особенно в сравнении с такими сложными языками программирования, как Ассемб-
лер и C++. Встроенные библиотеки VBA содержат достаточно большой объем кода,
который всегда доступен при реализации практических проблем — к счастью, вам не
придется заниматься решением многих частных задач, поскольку все это уже сделано.

Основные темы занятия.

• Функции для работы со строками.
• Форматирование данных.
• Операции файлового ввода-вывода.

Функции для работы со строками

В определенном смысле можно говорить, что все данные, с которыми работает

программа, хранятся в виде наборов символов. Часто, например, оказывается полез-
ным преобразование чисел в

 строки

 символов. Обработка символьных последователь-

ностей (строк) одна из наиболее распространенных операций.