Телефон: +7 (495) 649-0526

Макросы VBA - как создать и запустить

Картинка к странице

Следующая статья:

Содержание

Макросы

Если приходится часто использовать одни и те же команды в одной и той же последовательности, имеет смысл сохранить эту последовательность в виде VBA программы. Такая программа называется макросом.

Запустить средство записи макросов можно командой: меню Сервис + Макрос + Начать запись.

В результате любого из этих действий появится диалоговое окно «Запись макроса».

Окно «Запись макроса»

Окно «Запись макроса»

Имена макросов должны ассоциироваться с выполняемыми ими задачами. Однако при этом следует придерживаться определенных правил.

  • Имя макроса должно начинаться с буквы, а не с цифры. Имя макроса не должно содержать пробелов. Для выделения начала слов в имени макроса следует использовать прописные буквы.
  • Знаки пунктуации не допускаются.

Командой для начала записи макроса будет щелчок на кнопке ОК в диалоговом окне «Запись макроса». О том, что запись началась, можно узнать по появившейся с этого момента панели инструментов Остановить запись

Изменится также и указатель мыши, превратившись в небольшое изображение магнитофонной компакт-кассеты

Изменится также и указатель мыши, превратившись в небольшое изображение магнитофонной компакт-кассеты

После начала записи необходимо выполнить обычные действия, необходимые для работы с документом или приложением, – форматирование текста, вставку рисунков, таблиц, формул и так далее Все, что будет сделано, – и выбор команд из меню, и форматирование изображений, и печатание текста – будет сохранено в макросе.

Чтобы остановить запись после выполнения всех команд, которые нужно было записать, необходимо щелкнуть на кнопке «Остановить запись» в панели инструментов с тем же названием. Запись прекратится, а все записанные команды будут сохранены в виде VBA-программы.

Если необходимо выполнить команду, которая не должна быть частью макроса, щелкните на кнопке «Пауза» (тоже находится в панели инструментов «Остановить запись»).

Во время паузы в записи кнопка «Пауза» будет выглядеть нажатой. Официально теперь это будет кнопка «Возобновить запись». Щелкните на этой кнопке, чтобы продолжить запись в макрос необходимых действий с приложением.

Весь смысл записи макросов состоит в возможности их последующего выполнения. Ввиду того, что макросы являются VBA-программами, все приемы, которые используются при запуске созданных вручную VBA-программ, применимы и для автоматически записанных макросов. Всегда можно сначала открыть диалоговое окно Макрос (<Alt+F8>), выбрать в нем нужный макрос, а затем щелкнуть на кнопке Выполнить.

Независимо от сложности макроса сохраните документ перед тем, как выполнять этот макрос.

Редактирование программного кода макроса в редакторе Visual Basic

После того как макрос записан, полученную VBA-программу можно отредактировать. Для этого надо:

  • выбрать команду Сервис + Макрос + Макросы или нажать <alt+f8>, чтобы открыть диалоговое окно Макрос;
  • выбрать нужный макрос из списка ниже поля Имя. Макрос, который был записан, не выбирается автоматически, поэтому, чтобы найти его, иногда придется полистать список;
  • щелкнуть на кнопке Изменить. Открывается окно редактора Visual Basic с помещенным в него программным кодом, готовым для редактирования.
Диалоговое окно «Макрос»

Диалоговое окно «Макрос»

Задачи на закрепление материала

Задача

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

Примечание. При разработке данной формы используется новый элемент Переключатель (optionButton), который позволяет выбрать один из нескольких взаимоисключающих параметров или действий. Наиболее часто используемые свойства элемента управления OptionButton:

value – возвращает True, если переключатель выбран, и False в противном случае;

enabled – допустимые значения: Тrue (пользователь может выбрать переключатель) и False (в противном случае);

visible – допустимые значения: Тrue (переключатель отображается во время выполнения программы) и False (в противном случае);

caption – надпись, отображаемая рядом с переключателем.

Форма задачи в режиме конструктора и рабочем состоянии

Форма задачи в режиме конструктора и рабочем состоянии

Технология выполнения

  • Откройте приложение Word, сохраните документ и перейдите в редактор VBA.
  • Создайте форму.
  • Пропишите обработчики событий кнопок Закрыть и Вычислить.

Объявление глобальных переменных

Dim a, b, c, k, l, m As Double

Создание процедуры Shet

Sub shet()

a=Val(TextBox1.Text)

b=Val(TextBox2.Text)

c=Val(TextBox3.Text)

k=a * b + b / c

l=Sin(a) + (b + c) ^ 2

m=a + b + c

End Sub

Кнопка Вычислить

Private Sub CommandButton1_Click()

Call shet

If OptionButton1.Value=True Then

Label5.Caption=«a*b+b/c=» & k

End If

If OptionButton2.Value=True Then

Label5.Caption=«sin(a)+(b+c)^2=» & l

End If

If OptionButton3.Value=True Then

Label5.Caption=«a+b+c=» & m

End If

End Sub

Кнопка Закрыть

Private Sub CommandButton2_Click()

Unload Me

End Sub

  • Откомпилируйте программу.
  • Запустите форму на выполнение.

Задача.

Создать программу, выполняющую следующее: при вводе имени пользователя, среднего балла и числа пропусков в соответствующие текстовые поля формы:

  • если средний балл от 4 до 5, число пропусков меньше 100, то приложение выдает сообщение: «Имя, Вы в поощрительном списке у директора!»;
  • если средний балл меньше 4 и число пропусков больше 100, то выдается сообщение: «Имя, Вы еще учитесь здесь?».

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

Форма задачи в рабочем состоянии

Форма задачи в рабочем состоянии

Примечание. Можно использовать различные варианты построения данной программы, один из них – использование инструкций If else или Select case.

Задача.

Создать программу, выполняющую следующее: при вводе имени пользователя, среднего балла студента в текстовые поля формы и выбора числа пропусков:

  • если средний балл 5, число пропусков меньше 100, то приложение выдает сообщение: «Имя, Вы молодец! У Вас меньше 100 часов пропуска и … средний балл»;
  • если средний балл от 4 до 5 и число пропусков меньше 150, то выдается сообщение: «Имя, хорошо! У Вас меньше 150 часов пропуска и … средний балл»;
  • если средний балл от 3 до 4 и число пропусков до 200, то выдается сообщение: «Имя, надо лучше! У Вас до 200 часов пропуска и … средний балл»;
  • если средний балл от 2 до 3 и число пропусков больше 200, то выдается сообщение: «Имя, плохо! У Вас больше 200 часов пропуска и … средний балл».

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

Форма задачи в рабочем состоянии

Форма задачи в рабочем состоянии

Задача.

Создать программу, выполняющую следующее: при вводе имени пользователя и возраста в текстовые поля формы, выбора среднего балла и числа пропусков:

  • если средний балл 5, число пропусков меньше 100, то приложение выдает сообщение: «Имя, Вы молодец! У Вас меньше 100 часов пропуска, средний балл равен 5, и Вам всего … лет!»;
  • если средний балл от 4 до 5, число пропусков меньше 150, то приложение выдает сообщение: «Имя, Вы молодец! У Вас меньше 150 часов пропуска, средний балл от 4 до 5, и Вам всего … лет!»;
  • если средний балл от 3 до 4, число пропусков меньше 200, то приложение выдает сообщение: «Имя, надо лучше! У Вас до 200 часов пропуска и средний балл от 3 до 4, и Вам уже … лет!»;
  • если средний балл от 2 до 3, число пропусков больше 200, то приложение выдает сообщение: «Имя, плохо! У Вас больше 200 часов пропуска, средний балл от 2 до 3, и Вам уже … лет!».

Примечание. Предусмотреть выбор переключателей в произвольном порядке и прописать это в коде.

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

Форма задачи в рабочем состоянии

Форма задачи в рабочем состоянии

Видео: «Один из многих Data Center в Google»

Видео дата центра Google

Один из многих Data Center в Google
Интересное в интернете: Гоярчие предложения - купить дачу в перми недвижимость, товары и услуги

Статья: Макросы VBA - как создать и запустить

Раздел: VBA программирование (office)

Сайт: SD Company » Все разделы статей

Последнее изменение: 2010.11.17 в 00:28

Теги: как составить макросы, запуск макросов, vba

Следующая статья:

Что такое чаты и как создать бесплатно чат
Что такое чаты и как создать бесплатно чат
Что такое чат? Как его создать? Как сделать чат безопасным? Зачем нужен чат? Эти и другие вопросы рассматриваются в этой статье
Способы, как сделать свой сайт успешным
Способы, как сделать свой сайт успешным
О методах продвижения в рейтингах поисковых систем и повышения эффективности работы сайта
Как создать таблицу
Как создать таблицу
В данной статье содержится описание создания и работы с таблицами в программе FrontPage