Анимация
JavaScript


Главная  Библионтека 

0 1 2 3 4 5 6 [ 7 ] 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57

24 Программирование в среде Visual Basic for Applications

7. Добавьте новую строку, например.

Range("A3:СЗ").Select Выделение блока ячеек

8. Проследите, какие действия выполнит макрос после редактирования. Для этого выполните команду Сервис/Макрос/ Макросы, выберите макрос ClearCellData и нажмите кнопку Выполнить.

Созданный макрос можно назначить какой-либо панели инструментов или комбинации клавиш, выбрав соответствующий переключатель в группе Назначить макрос диалогового окна Запись макроса.



4. Простейшие функции и процедуры. Типы переменных

4.1. Функция пользователя

Рассмотрим простейшую задачу, которую можно решить с помощью VBA, - создание функции пользователя, имеющей имя. Функция пользователя, после своего создания, заносится в библиотеку функций. С созданными пользователем функциями можно работать с помощью мастера функций точно так же, как и со встроенными функциями рабочего листа. Функция рабочего листа, определенная пользователем, - это процедура Function, которую можно указать в формуле, хранящейся в ячейке.

Создадим, например, функцию пользователя, математически

определенную следующим образом [2]: у = sin(TU)~.

Функция пользователя разрабатывается точно так же, как и любая функция VBA. Она хранится в модуле и описывается с помощью ключевого слова Public. Параметром функции является значение или ссылка на ячейку. По умолчанию Excel присваивает модулям имена: Модуль1, Модуль2 (Modulel, Modu-1е2) и т. д. Для создания модуля выполните команду Сервис/ Макрос/Макросы. Введите имя макроса (рис. 4.2), например функция, и нажмите кнопку Создать. В результате откроется приложение VBA, в котором будет открыт уже существующий модуль (или создан новый), например Модуль1. На экране будут выведены строки:

Sub функция О End Sub

Замените эти строки на листе модуля текстом следующей программы (рис. 4.1).

Public Function функция(х)

функция = Sin(Application.Pi О*х)*Ехр(-2*х) End Function



IISSla-HU Efe>e*» 1 ► и M%iSglgr:?gl Строка 4. Столбец 53

"31 [функция ~ и

public funccion функция(х)

функция " sin(application.piО « х) • ехр(-2 « х) end function

Рис. 4.1. Лист модуля

При активном листе Модуль!, на котором введена функция, нажмите клавишу F2. На экране появится диалоговое окно Просмотр объектов, в котором можно произвести поиск любых компонентов VBA в имеющихся классах. Для поиска необходимо ввести имя необходимого компонента в поле поиска и нажать кнопку с изображением бинокля. На рис. 4.2 представлены результаты поиска функции.

Произведем теперь вычисления какой-либо функции с использованием только что созданного макроса. Пусть в ячейку А1 записано число 0.2 и вам нужно вычислить в ячейке В1 значение функции при X = 0,2. Для этого достаточно в ячейку В1 ввести формулу

функция(А1)

Функция Pi() в VBA возвращает значение постоянной п (в Excel - функция пиО). Заметим, что поскольку функция Pi() не является внутренней функцией VBA, то ее необходимо записать в форме Application.PiQ.

11 айя Правка Днд Встдвка Формат Ощадка Зап!ск £ервнс Дкно 2 -lglj<J



0 1 2 3 4 5 6 [ 7 ] 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57