Кнопка Исходный текст позволяет открыть окно программного кода для выбранного объекта.
С помощью кнопки, расположенной на рабочем листе, можно запустить Ваше приложение, не заходя в редактор Visual Basic. Для этого в окне программного кода созданной кнопки следует написать команду для вызова метода Show Вашей формы, например, UserForm1.Show.
1.2.4. Защита проекта
Для того чтобы защитить Ваше приложение от несанкционированного просмотра или редактирования можно установить защиту проекта. Тогда пользователь, не знающий пароля, не сможет открыть форму и программный код.
Для установки защиты в окне проекта (Project Explorer) следует щелкнуть правой кнопкой мыши по объекту VBAProject и выбрать команду VBAProject Properties. Затем на вкладке Protection установить флажок Lock project for viewing, ввести пароль в поле Password и повторить его в поле Confirm password, сохранить и закрыть рабочую книгу. При последующем открытии рабочей книги и попытке открыть проект в редакторе Visual Basic у пользователя будет запрашиваться пароль.
Если Вы установили защиту проекта, следует разместить на рабочем листе кнопку для запуска приложения (см. выше) или сделать открытие формы (запуск приложения) автоматическим при открытии рабочей книги. Для этого нужно:
щелкнуть правой кнопкой мыши по объекту Эта книга в окне проекта (Project Explorer) и выбрать команду View Code;
выбрать в списке «Выбор объекта» (Object) объект Workbook;
выбрать в списке «Выбор события» (Procedure) событие Open;
написать в процедуре команду открытия формы (например, UserForm1.Show).
1.2.5.Работа с макросами
Для того чтобы вставить в процедуру обработки события какиелибо действия над рабочим листом в Excel, например, форматирование ячеек, построение диаграммы и т.д., можно записать
11
макрос в Excel, а затем скопировать записанный макрос в свою процедуру.
Порядок работы:
1)выполнить команду Сервис – Макрос – Начать запись;
2)ввести имя макроса;
3)выполнить в нужном порядке действия, которые должны быть записаны в макросе;
4)выполнить команду Сервис – Макрос – Остановить запись;
5)выполнить команду Сервис – Макрос – Макросы, выбрать имя макроса и нажать кнопку Изменить;
6)скопировать команды из макроса в свою программу.
Приведем краткий обзор основных команд и операторов языка VBА. Основные типы данных описаны в табл. 2.
|
|
|
|
Таблица 2 |
|
|
Основные типы данных VBA |
||
Тип |
Содержимое переменной |
Диапазон допустимых значений |
||
Byte |
Достаточно |
малое |
целое |
От 0 до 255 |
|
неотрицательное число |
|
||
Integer |
Целое число |
|
|
От –32768 до 32767 |
Long |
Большое целое число |
|
От –2147483648 до 2147483647 |
|
|
|
|
|
|
Single |
Вещественное число |
|
От –3,402823Е38 до –1,401298Е-45 |
|
|
Значение |
одинарной |
для отрицательных значений и от |
|
|
точности |
с плавающей |
1,401298Е-45 до 3,402823Е38 для |
|
|
запятой |
|
|
положительных значений |
Double |
Вещественное число |
|
От –1,79769313486231Е308 до |
|
|
Значение двойной точности |
1,79769313486232Е308 |
||
|
с плавающей запятой |
|
|
|
String |
Последовательность |
|
От 0 до 65400 символов |
|
|
символов |
|
|
|
Boolean |
Логический тип данных |
Истина (-1) или Ложь (0) |
||
Date |
Дата/Время |
|
|
Даты с 1.01.100 по 31.12.9999 и |
|
|
|
|
время с 0:00:00 по 23:59:59 |
Type |
Набор данных разного типа, |
Определяется пользователем |
||
|
имеющих |
общее |
имя |
|
|
(запись) |
|
|
|
12
Основные математические функции, используемые в VBA, приведены в табл. 3. Перечень операций приведен в табл. 4 (в порядке уменьшения приоритета операции).
Таблица 3
|
|
Математические функции VBA |
|||
|
Функция |
|
|
Значение |
|
Abs(число) |
|
Абсолютное значение числа (модуль числа) |
|||
Cos(число) |
|
Косинус числа |
|||
Exp(число) |
|
Возводит константу е в указанную степень |
|||
Int(число) |
|
Целая часть числа |
|||
Log(число) |
|
Натуральный логарифм числа |
|||
Rnd |
|
Выдает случайное число от 0 до 1 |
|||
Round(число, точность) |
Округляет число с указанной точностью |
||||
Sin(число) |
|
Синус числа |
|||
Sqr(число) |
|
Квадратный корень из числа |
|||
Tan(число) |
|
Тангенс числа |
|||
|
|
|
|
Таблица 4 |
|
|
Порядок выполнения операций в VBA |
||||
|
Знаки операций |
|
Операции |
|
|
|
|
Арифметические операции |
|
||
|
^ |
|
|
Возведение в степень |
|
|
– |
|
Отрицание |
|
|
|
* или / |
|
Умножение или деление |
|
|
|
\ |
|
|
Вычисление целой части от деления |
|
|
Mod |
|
Вычисление остатка от деления |
|
|
|
+ или – |
|
Сложение или вычитание |
|
|
|
|
|
Операции сравнения |
|
|
|
= |
|
|
Равенство |
|
|
<> |
|
|
Неравенство (не равно) |
|
|
< |
|
|
Меньше |
|
|
> |
|
|
Больше |
|
|
<= |
|
|
Меньше или равно |
|
|
>= |
|
|
Больше или равно |
|
|
|
|
Логические операции |
|
|
|
Not |
|
Логическое НЕ |
|
|
|
And |
|
Логическое И |
|
|
|
Or |
|
Логическое ИЛИ |
|
|
Оператор описания переменной
Dim Имя переменной As Тип
13
Оператор присваивания
Имя переменной = Выражение
Оператор ввода
Имя переменной = InputBox (“Сообщение”)
Оператор вывода
MsgBox (“Сообщение” & Имя переменной)
Оператор перехода на рабочий лист Excel
Sheets(“Имя листа”).Select
Sheets(Номер листа).Select
Считывание данных из ячейки рабочего листа Excel
Имя переменной = Сells(номер строки, номер столбца)
Вывод данных в ячейку рабочего листа Excel
Сells(номер строки, номер столбца) = Значение
Условный оператор
Неполная форма:
1.If Условие Then Оператор
2.If Условие Then
Блок операторов
End If
Полная форма:
1.If Условие Then Оператор1 Else Оператор2
2.If Условие Then
14
Блок операторов 1
Else
Блок операторов 2
End If
Оператор выбора
Select Case Тестируемое выражение Case Значение 1
Блок операторов 1 Case Значение 2
Блок операторов 2
……………
Case Значение n
Блок операторов n
Case Else
Блок операторов
End Select
Оператор цикла с параметром
For Параметр = Начало To Конец Step Шаг Блок операторов
Next Параметр
Операторы циклов с предусловием
1. Do While Условие Блок операторов
Loop
2. Do Until Условие Блок операторов
Loop
3. While Условие Блок операторов
Wend
Операторы циклов с постусловием
15