Офисное программирование
Шрифт:
Весь смысл записи макросов состоит в возможности их последующего выполнения. Ввиду того, что макросы являются VBA-программами, все приемы, которые используются при запуске созданных вручную VBA-программ, применимы и для автоматически записанных макросов. Всегда можно сначала открыть диалоговое окно Макрос (<Alt+F8>), выбрать в нем нужный макрос, а затем щелкнуть на кнопке Выполнить (рис. 33).
Независимо от сложности макроса сохраните документ перед тем, как выполнять этот макрос.
Рис. 33. Диалоговое окно «Макрос»
После того как макрос записан, полученную VBA-программу можно отредактировать. Для этого надо:
1) выбрать команду Сервис + Макрос + Макросы или нажать <alt+f8>, чтобы открыть диалоговое окно Макрос (рис. 33);
2) выбрать нужный макрос из списка ниже поля Имя. Макрос, который был записан, не выбирается автоматически, поэтому, чтобы найти его, иногда придется полистать список;
3) щелкнуть на кнопке Изменить. Открывается окно редактора Visual Basic с помещенным в него программным кодом, готовым для редактирования.
Пример 16. Создать программу, рассчитывающую значения выражений в зависимости от выбранного переключателя на форме и введенных значений в текстовые поля. Основная программа после нажатия на кнопку Вычислить вызывает процедуру Shet, рассчитывающую все необходимые выражения. После нажатия на кнопку Закрыть разработанное приложение закрывается (рис. 34).
Примечание. При разработке данной формы используется новый элемент Переключатель
(optionButton), который позволяет выбрать один из нескольких взаимоисключающих параметров или действий. Наиболее часто используемые свойства элемента управления OptionButton:
value – возвращает True, если переключатель выбран, и False в противном случае;
enabled – допустимые значения: Тrue (пользователь может выбрать переключатель) и False (в противном случае);
visible – допустимые значения: Тrue (переключатель отображается во время выполнения программы) и False (в противном случае);
caption – надпись, отображаемая рядом с переключателем.
Рис. 34. Форма примера 16 в режиме конструктора и рабочем состоянии
Технология выполнения
1. Откройте приложение Word, сохраните документ и перейдите в редактор VBA.
2. Создайте форму (рис. 34).
3. Пропишите обработчики событий кнопок Закрыть и Вычислить.
Объявление глобальных переменных
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. Запустите форму на выполнение.
Пример 17. Создать программу, выполняющую следующее: при вводе имени пользователя, среднего балла и числа пропусков в соответствующие текстовые поля формы:
• если средний балл от 4 до 5, число пропусков меньше 100, то приложение выдает сообщение: «Имя, Вы в поощрительном списке у директора!» (рис. 35);
• если средний балл меньше 4 и число пропусков больше 100, то выдается сообщение: «Имя, Вы еще учитесь здесь?».
При другом раскладе выдумайте свое сообщение.
Рис. 35. Форма примера 17 в рабочем состоянии
Примечание. Можно использовать различные варианты построения данной программы, один из них – использование инструкций If else или Select case.
Пример 18. Создать программу, выполняющую следующее: при вводе имени пользователя, среднего балла студента в текстовые поля формы и выбора числа пропусков:
• если средний балл 5, число пропусков меньше 100, то приложение выдает сообщение: «Имя, Вы молодец! У Вас меньше 100 часов пропуска и … средний балл»;
• если средний балл от 4 до 5 и число пропусков меньше 150, то выдается сообщение: «Имя, хорошо! У Вас меньше 150 часов пропуска и … средний балл» (рис. 36);
• если средний балл от 3 до 4 и число пропусков до 200, то выдается сообщение: «Имя, надо лучше! У Вас до 200 часов пропуска и … средний балл»;
Борьба за трон
Приключения:
исторические приключения
рейтинг книги
Почем цветочек аленький?
Женщина-цунами
Детективы:
иронические детективы
рейтинг книги
На границе империй. Том 7
7. Фортуна дама переменчивая
Фантастика:
боевая фантастика
космическая фантастика
попаданцы
рейтинг книги
Дважды одаренный. Том II
2. Дважды одаренный
Фантастика:
городское фэнтези
альтернативная история
аниме
рейтинг книги
Этот мир не выдержит меня. Том 2
2. Первый простолюдин в Академии
Фантастика:
фэнтези
попаданцы
рейтинг книги
Память льда
3. «Малазанская империя»
Фантастика:
фэнтези
рейтинг книги
Кодекс Охотника. Книга VI
6. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
рейтинг книги
Звездная Кровь. Экзарх II
2. Экзарх
Старинная литература:
прочая старинная литература
рейтинг книги
Ваше Сиятельство 6
6. Ваше Сиятельство
Фантастика:
попаданцы
аниме
рейтинг книги
Кукловод
4. Династия
Фантастика:
попаданцы
аниме
рейтинг книги
Древесный маг Орловского княжества 13
13. Орловское княжество
Фантастика:
аниме
фэнтези
попаданцы
рейтинг книги
Эволюционер из трущоб. Том 10
10. Эволюционер из трущоб
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
рейтинг книги
Ты - наша
1. Наша
Любовные романы:
современные любовные романы
эро литература
рейтинг книги
Меняя маски
1. Унесенный ветром
Фантастика:
боевая фантастика
попаданцы
рейтинг книги