Чтение онлайн

на главную

Жанры

VBA для чайников

Каммингс Стив

Шрифт:

Excel тоже позволяет назначить VBA-программам комбинации клавиш, но ограничивает допустимые комбинации сочетаниями клавиши Ctrl с печатаемыми символами (буквами, числами и знаками пунктуации). Чтобы назначить программе комбинацию клавиш, выполните следующее.

1. Откройте диалоговое окно Макросы (почему бы для этого не воспользоваться комбинацией клавиш Alt+F8?)

2. Найдите и выделите свою программу в списке.

3. Щелкните на кнопке Параметры.

4. В появившемся диалоговом окне (рис. 4.10) нажмите клавишу, которую хотите скомбинировать с клавишей Ctrl.

Excel при пом различает буквы верхнего и нижнего регистров. (Другими словами, клавиша с буквой, нажатая вместе с клавишей ?Shiff. отличается от клавиши с буквой, нажатой без клавиши Shift.)

5. Щелкните на кнопке ОК, чтобы вернуться в диалоговое окно Макросы*

Рис 4.10.

Назначение VBA программе комбинации клавиш в Excel

В приложениях баз данных Access назначать комбинации клавиш совсем несложно. Приложения Access построены на использовании форм и элементов управления в этих формах. Все, что вам потребуется сделать, это создать процедуры обработки событий для этих форм и элементов управления- процедуры, выполняемые при нажатии клавиши пользователем. Проце1уры обработки событии в мельчайших подробностях описываются в главе 10.

Другое дело, если вы работаете с базой данных Access напрямую, используя команды меню и кнопки панелей инструментов. В этом случае для создания комбинаций клавиш, вызывающих VBA-программы, вам придется назначать эти комбинации клавиш специальным макросам Access. (Напомню, что макросы Access не являются процедурами VBA.) В Access нет средства записи макросов, поэтому вам придется строить макросы вручную в соответствии со следующими инструкциями.

1. В окне базы данных выберите кнопку Макросы, а затем щелкните на кнопке Создать.

Появится диалоговое окно Макрос (рис. 4.11).

2. В столбце Макрокоманда выберите Запуск Программы, как показано на рис. 4.11.

3. Выберите Вид=Имена макросов, чтобы в окне появился новый столбец Имя макроса.

4 Напечатайте в столбце Имя макроса комбинацию клавиш, которую вы хотите назначить своей программе.

Используйте символ ́ для обозначения клавшим Ctrl. а символ + - для обозначения Shift. Буквы и числа можно печатать как обычно, а вот функциональные клавиши нужно заключить в фигурные скобки. Например, для комбинации клавиш Ctrb-k нужно напечатать ́ k, а для Shift + F8 • F8 ).

5. Щелкните в текстовом поле Имя функции и напечатайте имя той процедуры VBA, которую должен вызывать макрос.

Это должна быть процедура типа Function.

6. Закройте окно Макрос, щелкнув на кнопке в правом верхнем углу окна. Когда Access попросит дать макросу имя, напечатайте AutoKeys.

Рис. 4. 1 /. Такое окно используется для создания макросов в Access

Макросы для мыши Visio

Visio предлагает совершенно другом способ вызова VBA-программ - это двойной щелчок на форме, которую вы связали со своим программным кодом. Вот инструкции для назначения форме ответа на двойной щелчок кнопкой мыши.

1. Щелкните на форме, чтобы выделить ее.

2. Выберите Format=Behavior.

3. Перейдите на вкладку Double-Click.

4. Выберите VBA-процедуру своей мечты из списка Run Macro.

5. Щелкните на кнопке ОК.

Теперь после двойного щелчка кнопкой мыши на этой форме всегда будет выполняться ваша VBA-программа.

Автоматический запуск VBA-программ

Предположим, что у вас есть VBA-программа, которую вы любите настолько, что хотели бы видеть ее в действии самой первой каждый раз, когда запускаете свое приложение. А если вы любите свою программу так сильно, что и такую, казалось бы, ничтожную задержку, как щелчок на кнопке, наверное, нелегко пережить.

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

В табл. 4.1-4.3 представлены приемы, которые можно использовать в самых популярных VBA-приложениях для автоматического запуска VBA-программ.

Таблица 4.1. Автоматическое выполнение VBA-программ при запуске приложения с помощью ярлыка

Приложение

Команда, добавляемая в поле

Файл на вкладке Ярлык

Комментарий

Microsoft Word

/mVBA

Вместо VBA напечатайте

имя своей VBA программы

Microsoft Access

/xmakpoc

Выполняет все макросы из указанного вами списка. Чтобы выполнить процедуру VBA, макрос Access должен включать макрокоманду ЗапускПрограммы

Таблица 4.2. Автоматическое выполнение VBA-программ в Word с помощью назначения программам специальных имен

Имя VBA-программы

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

AutoExec

AutoNew

При запуске Word

При создании каждого нового документа

AutoOpen

AutoClose

AutoExit

При открытии любого существующего документа

При закрытии документа

При выходе из Word

Замечание. Макрос AutoExec должен храниться в шаблоне Обычный ( normal.dot ).

Таблица 4.3. Выполнение VBA-программ с помощью процедур обработки событий (создание процедур обработки событий обсуждается в главе 14)

Приложение

Условие автоматического вызова процедуры

Используйте объект

Создайте процедуру обработки события

Visio

При создании нового документа

Document

Document Opened

Visio

При сохранении документа под другим именем

Document

Document SavedAs

Microsoft Word

При открытии документа

Document

Open

Microsoft Word

При создании нового документа

Document

New

Microsoft Word

При закрытии документа

Document

Close

Microsoft Excel

При открытии любой рабочей книги

Application

WorkbookOpen

Microsoft Excel

При открытии конкретной рабочей книги

Workbook

Open

Microsoft Excel

При создании новой рабочей книги

Workbook

NewSheet

Замечание. Совсем немногие из длинного списка событий Visio, Word и Excel относятся ко всему документу.

Работа с ярлыками Windows

Некоторые приложения позволяют выполнить программный код VBA с помощью добавления команд к имени приложения при его запуске (см. табл. 4.1). Если вы не хотите утруждать себя набиранием этих команд в командной строке DOS, модифицируйте или создайте подходящий ярлык Windows, который будет вызывать это приложение.

Пиктограммы в меню Пуск Windows представляют ярлыки. Чтобы модифицировать их, щелкните правой кнопкой мыши на кнопке Пуск, из появившегося небольшого меню выберите пункт Открыть, а затем откройте папку Программы и подходящие вложенные в нее папки, чтобы увидеть ярлык вашего приложения. Теперь щелкните правой кнопкой мыши на ярлыке и выберите из появившегося меню пункт Свойства, чтобы открыть диалоговое окно Свойства.

Поделиться:
Популярные книги

Live-rpg. эволюция-3

Кронос Александр
3. Эволюция. Live-RPG
Фантастика:
боевая фантастика
6.59
рейтинг книги
Live-rpg. эволюция-3

Я – Орк

Лисицин Евгений
1. Я — Орк
Фантастика:
юмористическая фантастика
попаданцы
аниме
5.00
рейтинг книги
Я – Орк

Беглец

Бубела Олег Николаевич
1. Совсем не герой
Фантастика:
фэнтези
попаданцы
8.94
рейтинг книги
Беглец

Корпулентные достоинства, или Знатный переполох. Дилогия

Цвик Катерина Александровна
Фантастика:
юмористическая фантастика
7.53
рейтинг книги
Корпулентные достоинства, или Знатный переполох. Дилогия

Князь Мещерский

Дроздов Анатолий Федорович
3. Зауряд-врач
Фантастика:
альтернативная история
8.35
рейтинг книги
Князь Мещерский

Генерал-адмирал. Тетралогия

Злотников Роман Валерьевич
Генерал-адмирал
Фантастика:
альтернативная история
8.71
рейтинг книги
Генерал-адмирал. Тетралогия

Идеальный мир для Лекаря 3

Сапфир Олег
3. Лекарь
Фантастика:
фэнтези
юмористическое фэнтези
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 3

Делегат

Астахов Евгений Евгеньевич
6. Сопряжение
Фантастика:
боевая фантастика
постапокалипсис
рпг
5.00
рейтинг книги
Делегат

Болотник 2

Панченко Андрей Алексеевич
2. Болотник
Фантастика:
попаданцы
альтернативная история
6.25
рейтинг книги
Болотник 2

Возвышение Меркурия. Книга 17

Кронос Александр
17. Меркурий
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Возвышение Меркурия. Книга 17

Курсант: Назад в СССР 11

Дамиров Рафаэль
11. Курсант
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Курсант: Назад в СССР 11

Я – Орк. Том 4

Лисицин Евгений
4. Я — Орк
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я – Орк. Том 4

Восход. Солнцев. Книга XI

Скабер Артемий
11. Голос Бога
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Восход. Солнцев. Книга XI

Мимик нового Мира 4

Северный Лис
3. Мимик!
Фантастика:
юмористическая фантастика
постапокалипсис
рпг
5.00
рейтинг книги
Мимик нового Мира 4