Содержание лабораторной работы
Лабораторная работа предполагает решение следующих задач:
- использование макроса с текстом документа «СПРАВКА» созданного в лабораторной работе № 1;
- создание формы пользователя для ввода переменной части текста документа «СПРАВКА»;
- написание программного кода процедур обработки нажатия кнопок на форме пользователя;
- редактирование текста процедуры макроса с текстом документа «СПРАВКА» с целью подключения текстовых полей и поля со списком формы пользователя.
Выполнение лабораторной работы
Открыть документ Word с именем Lab1.docm, созданный в лабораторной работе № 1 и сохранить с именем Lab2.docm.
Открыть окно редактора VBA командой Alt+F11 или Разработчик, Код, Visual Basic.
В проекте Lab2 создать форму пользователя командой Insert, UserForm (Вставка, Форма пользователя).
Элементы для формы брать на панели Элементы управления.
Изменить заголовок формы (свойство Caption). В заголовке должны быть Фамилия, инициалы и номер группы студента.
В процедуры нажатия кнопок ввести программный код. Для входа в процедуру выполнить двойной щелчок мышью на соответствующей кнопке формы в режиме конструктора.
' Нажатие кнопки Выполнить
Private Sub CommandButton1_Click()
Макрос1
End Sub
' Нажатие кнопки Выход
Private Sub CommandButton2_Click()
UserForm1.Hide
End Sub
Private Sub CommandButton3_Click()
Макрос3
End Sub
Для объекта Поле со списком (ComboBox):
' Ввод элементов списка в поле со списком
Private Sub UserForm_Initialize ()
ComboBox1.AddItem "П.П. Петров"
ComboBox1.AddItem "С.С. Сидоров"
ComboBox1.AddItem "И.Н. Петрова"
ComboBox1.ListIndex = 0
End Sub
Отредактировать текст макроса Макрос1, заменив часть постоянного текста для документа «СПРАВКА», полями формы пользователя.
' Код макроса Макрос1
Sub Макрос1()
Selection.Font.Size = 12
Selection.Font.Bold = wdToggle
Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
Selection.TypeText Text:="СПРАВКА"
Selection.TypeParagraph
Selection.Font.Bold = wdToggle
Selection.ParagraphFormat.Alignment = wdAlignParagraphLeft
Selection.TypeText Text:="дана настоящая в том, что "
Selection.Font.Italic = wdToggle
Selection.TypeText Text:=UserForm1.TextBox1
Selection.TypeParagraph
Selection.TypeText Text:=UserForm1.TextBox2
Selection.Font.Italic = wdToggle
Selection.TypeParagraph
Selection.TypeText Text:="работает "
Selection.Font.Italic = wdToggle
Selection.TypeText Text:=UserForm1.TextBox3
Selection.Font.Italic = wdToggle
Selection.TypeParagraph
Selection.TypeText Text:="в должности "
Selection.Font.Italic = wdToggle
Selection.TypeText Text:=UserForm1.TextBox4 & "."
Selection.Font.Italic = wdToggle
Selection.TypeParagraph
Selection.TypeText Text:="Справка выдана для предъявления"
Selection.TypeParagraph
Selection.Font.Italic = wdToggle
Selection.TypeText Text:=UserForm1.TextBox5
Selection.TypeParagraph
Selection.TypeText Text:=UserForm1.TextBox6
Selection.Font.Italic = wdToggle
Selection.TypeParagraph
Selection.TypeParagraph
Selection.TypeText Text:="МП"
Selection.TypeParagraph
Selection.TypeText Text:="Директор" & vbTab
Selection.ParagraphFormat.TabStops.Add Position:=CentimetersToPoints(15.25 _
), Alignment:=wdAlignTabRight, Leader:=wdTabLeaderSpaces
Selection.Font.Italic = wdToggle
Selection.TypeText Text:=UserForm1.ComboBox1.Text
Selection.Font.Italic = wdToggle
Selection.TypeParagraph
End Sub
Создайте макрос Макрос2 и Макрос3:
' Код макроса Макрос2 (удаляет содержимое документа)
Sub Макрос2()
Selection.WholeStory
Selection.Delete Unit:=wdCharacter, Count:=1
End Sub
' Код макроса Макрос3 (открывает форму пользователя)
Sub Макрос3()
UserForm1.Show
End Sub
Кнопку Справка на панели быстрого доступа Для Lab2 подключить к макросу Макрос3.
Проверить работу кнопок на панели быстрого доступа Для Lab2.
Сохранить документ Lab2.doc на диске.
ЛАБОРАТОРНАЯ РАБОТА №3