Задание 1. Автоматизированное заполнение ячеек таблицы
Ручное заполнение ячеек таблицы какими-либо значениями является достаточно неэффективным в ряде случаев, например, при вычислении значений функции f(x), которые зависят от x. В этом случае удобно прибегнуть к помощьюVBA, создав определенные элементы управления, включив их в структуру книги и назначив им обработку определенных событий.
Постановка задачи.
Создать кнопку, при нажатии на которую заполняется таблицы значений аргумента. Аргумент X изменяется в заданном диапазоне [X0, XK] с приращением Dx.
Ход работы.
1. Создайте папку с названием «Лабораторная_работа_№19».
2. Запустите MS Excel.
3. Перейдите на Лист 2.
4. Переименуйте Лист 2, присвоив ему название «Заполнение».
5. Включите панель инструментов «Элементы управления», щелкнув в области панелей инструментов правой клавишей мыши и выбрав соответствующую команду «Элементы управления», либо с помощью пункта меню Вид → Панели инструментов.
6. На панели инструментов «Элементы управления» включите кнопку «Режим конструктора» .
7. Нарисуйте командную кнопку на листе 2 («Заполнение»).
8. Щелкните правой клавишей мыши на кнопке и выберите Свойства. Отобразится окно Properties (Рис.19.1).
9. Измените свойство Caption (Заголовок) на «Заполнить».
10. Изучите таблицу 19.1 «Свойства компонента Command Button» и установите свойства расположенной кнопки в соответствии с Таблицей 19.2 «Свойства кнопки «Заполнить».
Таблица 19.1
Свойства компонента Command Button
Свойство | Значение |
Caption | Заголовок |
Name | Имя объекта |
Продолжение таблицы 19.1
Свойство | Значение |
BackColor | Цвет фона |
Width | Ширина |
Height | Высота |
AutoSize | Авторазмер |
ForeColor | Цвет текста |
Visible | Видимость |
Font | Шрифт |
Таблица 19.2
Свойство | Значение |
Caption | Заполнить |
BackColor | &H80000001& |
ForeColor | &H000000FF& |
Font | Courier New, 10, жирный |
11. Выполните двойной щелчок по кнопке. Откроется окно программного кода (Рис.19.2).
12. Введите между строк процедуры следующие операторы и комментарий:
Private Sub CommandButton1_Click()
DimX0, Xk, Dx, X As Double
'X0 - начальное значение X
'Xk - конечное значение X
'Dx - шаг изменения значения X
'X - аргумент X
Dim i As Integer 'переменная-счетчик
Setsht = Worksheets("Заполнение") 'Программное имя листа, на котором
'будут выполнены изменения
sht.Range("A:D").Clear 'Очищаем столбцы на листе sht
sht.Range("A1") = "N" 'Присваиваем название заголовку ячейки A1
sht.Range("B1") = "X" 'Присваиваем название заголовку ячейки B1
sht.Range("C1") = "Y" 'Присваиваем название заголовку ячейки C1
X0 = Val(InputBox("Введите значение X0:", "X0", "0")) 'запрос значения X0
Xk = Val(InputBox("Введите значение Xk:", "Xk", "0")) 'запрос значения Xk
Dx = Val(InputBox("Введите значение Dx:", "Dx", "0")) 'запрос значения Dx
X = X0 'Присваиваем начальное значение аргументу X
i = 2 'значение индекса, указывающего номер строки,
'с которой нужно начинать заполнение
Do While X <= Xk 'начинаем цикл формирования столбца значений X
sht.Cells(i, 1) = i - 1 'в ячейку i 1-го столбца записываем номер строки
sht.Cells(i, 2) = X 'в ячейку i 2-го столбца записываем значение X
X = X + Dx 'берем следующее значение X
i = i + 1 'переходим в следующую строку
Loop 'конец цикла формирования столбцов № и X
MsgBox "Всего в таблице " + CStr(i - 2) + " строк"
Дата добавления: 2015-06-12; просмотров: 871;