Читайте также:
|
|
Пример 9: Вычислить значения функции уi=х2; при заданных значениях xi равными 1, 2,...12.
1. В ячейки А1:А12 рабочего листа введем значения хi равные 1, 2,...,12.
2. На листе модуля наберем текст функции
Function Y(x)
Y=x^2
End Function
3. Выделим ячейку В1 и щелкнем по кнопке мастер функции - fx. Далее - определенные пользователем, Y и ОК.
4. В строку х диалогового окна введем А1 и ОК.
5. Маркер заполнения протащим до В 12.
6. По результатам вычислений, используя мастер диаграмм, построим график.
Для создания процедуры, также как и для создания функции, необходимо выполнить команды:
1. Сервис,Макрос, Редактор Visual Basic, чтобы открыть окно редактора Visual Basic.
2. Вставка, Модуль – для создания листа Модуля.
3. Выбрать значок модуля в окне Проект, чтобы активизировать лист Модуля в окне редактора кода.
4. Набрать на листе Модуля Процедуру.
Для запуска процедур, в отличие от способов запуска функций, рассмотренных в п.3.5.1., используются способы запуска VBA-программ. На этапе создания процедур для их запуска используют один из способов в окне редактора VB- 1. Нажать клавишу F5. 2. Щелкнуть кнопку () Run на панели инструментов. 3. Выполнить команды пунктов меню Запуск\Запуск подпрограммы. В дальнейшем самостоятельно освоить другие способы быстрого запуска программ (л., с. 72-85).
Рассмотрим пример создания процедуры с использованием оператора For-Each-Next
Пример 10. Создание процедуры с использованием оператора For-Each-Next
Для перебора объектов группы подобных объектов, например, ячеек из диапазона или элементов массива, используется оператор цикла For-Each-Next, синтаксис которого приведен на стр ……
Приведенная ниже процедура Знак заменяет все положительные числа диапазона ячеек А1:В2 знаком "+", все отрицательные числа - знаком "-", а нуль оставляет без изменения:
Option Explicit
Sub Знак ()
Dim с(2,2) As Object
For Each с(2,2) In Worksheets ("Лист1").Range("A1:B2")
If IsNumeric(с(2,2).Value)Then
If с(2,2).Value>0 Then с(2,2).Value="+"
End If
If IsNumeric(с(2,2).Value)Then
If с(2,2)c.Value<0 Then с(2,2).Value="-"
End If
If IsNumeric(с(2,2).Value)Then
If с(2,2).Value=0 Then с(2,2).Value=0
End If
Next с(2,2)
End Sub
В процедуре Знак использовалась функция IsNumeric (выражение), которая возвращает True, если выражение может быть описано как числовое, и False - в противном случае.
Задания: 1. Реализовать процедуры примеров 1-10.
2. Индивидуальные задания для самостоятельной разработки функций и процедур.
Дата добавления: 2015-08-13; просмотров: 48 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Особенности ввода-вывода информации в диалоговом режиме | | | II. Задания по циклическим алгоритмам |