Каждый элемент управления на форме VBA может быть связан со специальной процедурой обработки. При выполнении двойного щелчка на значке элемента управления на форме в редакторе VBA открывается «заготовка» для процедуры обработки этого элемента. Например, двойной щелчок на значке первого размещенного на форме поля Метка (Label) вызывает «заготовку» процедуры следующего вида:
Private Sub Label1_Click()
End Sub
где Label1 – имя по умолчанию первого размещенного на форме поля типа Метка (для сведения: это имя находится в поле Name на панели свойств элемента управления и при необходимости его можно изменить – тогда нужно будет изменить и имя процедуры), Click – действие, активирующее процедуру (в данном случае, щелчок по элементу управления).
Переключение окна редактора VBA в режим демонстрации объектов – Shift+F7 или View – Object, переключение окна в режим кода – F7 или View – Code.
Процедуры элементов управления могут включать в себя различные операторы для работы с данными, ссылки на документ, ссылки на другие объекты, вызов подпрограмм.
Пример операторов для работы с данными внутри процедуры элемента управления:
Private Sub CommandButton1_Click()
'процедура обработки нажатия кнопки CommandButton1
'расчет значения переменной rez
rez = 1000) / 60 / 60
End Sub
Пример ссылки на документ:
Private Sub CommandButton1_Click()
'процедура обработки нажатия кнопки
'если документ не открыт, то выполнить открытие нового документа
If Documents.Count = 0 Then Documents.Add
'размещение данных в документе в месте нахождения курсора или выделения
Selection.Text = TextBox1.Text & " км/ч = " & TextBox2.Text & " м/с"
'снять выделение текста в документе
Selection.Collapse Direction:=wdCollapseEnd
End Sub
Пример ссылки на другой объект:
Private Sub TextBox1_Change()
'процедура изменения текстового поля TextBox1
If IsNumeric(TextBox1.Text) = True And Not Val(TextBox1.Text) = 0 Then
'передача результата в другое текстовое поле TextBox2:
TextBox2.Text = ((TextBox1.Text) * 1000) / 60 / 60
End If
End Sub
Пример вызова подпрограммы, находящейся в данном модуле (<имя_подпрограммы> или Call <имя_подпрограммы>):
Private Sub CommandButton2_Click()
'процедура обработки нажатия кнопки CommandButton2
'запуск подпрограммы Scet с помощью оператора Call <имя_подпрограммы>
Scet
End Sub
или
Private Sub CommandButton2_Click()
'процедура обработки нажатия кнопки CommandButton2
'запуск подпрограммы Scet с помощью оператора Call <имя_подпрограммы>
Call Scet
End Sub
Удобной и приятной работы в Word!
Перевести спасибо на Яндекс кошелёк - 41001162202962; на WebMoney - R581830807057.