Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Применение диалоговых окон (форм)В VBA есть диалоговые окна или формы пользователя аналогичные формам в VB.
Для обращения к ячейке используется объект Range, являющегося свойством рабочего листа, у которого в свою очередь есть свойство Value, содержащее значение ячеек, адрес которых будет аргументом метода Range. В качестве аргумента используем элемент управления RefEdit таким образом, чтобы присвоить переменной значения, находящейся в ячейке используем синтаксис: X=Range(RefEdit1.Value).Value Так как свойство Value – это свойство по умолчанию как для Range, так и для RefEdit, то его можно не использовать и написать X=Range(RefEdit1) Двойной щелчок мыши по командной кнопке создаст в окне модуля формы заготовку процедуры, запускаемой по щелчку по этой кнопке. В качестве примера вычисления объема напишем следующий код: Private Sub CommandButton1_Click() Const Pi = 3.14159265358979 Dim x1 As Double, x2 As Double, x3 As Double, x4 As Double x1 = Range(RefEdit1) ‘присвоение переменной x1 значение ячейки, адрес которой ‘находится в RefEdit1 x2 = Range(RefEdit2) x3 = Range(RefEdit3) x4 = Pi * x1 ^ 3 * 1 / Tan(Pi / 180 * x3 / 2) * Tan(Pi / 180 * x2) / (8 * Sin(Pi / 180 * x3 / 2) ^ 2) TextBox1.Text = x4 Range(RefEdit4) = x4 ‘присвоение ячейки с адресом, находящимся в RefEdit4 ‘вычисленного значения End Sub
Для вызова формы с рабочего листа на панели инструментов Visual Basic нажмем кнопку «Элементы управления» и поместим на лист кнопку. Дважды щелкнув по ней, напишем код вызова формы. Синтаксис оператора показа формы такой: ИмяФормы.Show Private Sub CommandButton1_Click() frmV.Show End Sub
Обратите внимание, что эта процедура помещена в модуль рабочего Листа.
Вызвав форму и придавая фокус соответствующим элементам RefEdit и затем, щелкая в ячейках рабочего листа, введем адреса ячеек. Это можно сделать как мышью, так и набором с клавиатуры и вводить вместо адресов имена ячеек, если они имеются.
В ячейке, указанной для вывода получим значение объема, которое должно быть таким же, как и в предыдущих случаях. Для вычисления значения переменной x4 можно было использовать уже готовую функцию пользователя фнкОбъём, написав: x4=фнкОбъём(x1, x2,x3)
Итак, проект содержит стандартный модуль с общедоступной (Public) функцией фнкОбъём(), форму со своим модулем, где находится локальная (Private) процедура ввода, вычисления, вывода данных и модуль рабочего листа «Лист1» с процедурой вызова формы.
|