Информатика
Основы программирования на языке VBA (Visual Basic for Application)-
Это объектно-ориентированный язык высокого уровня. Он встроен для программирования приложений MS Office, то есть его вызвать просто так нельзя, надо загрузить одно из приложений Word, Excel или Access, и из него загрузить язык VBA .
В Excel VBA активизируется одним из следующих способов:
1. Сервис => Макрос => Редактор VBA
2. Alt+F11
Структура программ на языке VBA
VBA использует понятие «проект»- это совокупность форм и рабочих листов Excel с расположенными на них объектами управления и подпрограмм обработки событий, которые могут произойти с этими объектами.
Событие- это какое-либо воздействие на объект. Например, щелчок мышью, двойной щелчок мышью, нажатие и отпускание кнопки мыши и т.д.
Созданный проект и является в обычном смысле программой для достижения требуемого результата.
Помимо форм, объект может содержать модули – программные коды, действие которых распостроняется не на отдельные проекты или формы, а на весь проект в целом.
Добавление модуля в проект осуществляется с помощью команды Insert => Module или модуль получается автоматически при создании макроса или процедуры обработки события.
Грамматика языка программирования VBA
Язык VBA использует свой алфавит, включающий буквы латинского алфавита и кириллицу, цифры от 0 до 9 и знак подчеркивания. Из этих символов строится имена процедур, переменных и констант.
В состав алфавита входит также следующие знаки + - * / ^ = > < ( ) [ ] ‘ & @
В том числе и составные >=, <=, <>(Знак «не равно»)
Правило составление имен:
- Имя должно быть содержательным.
- Оно должно начинаться с буквы.
- Не должно содержать точки, пробела, разделительных символов.
- Ими не должно называться зарезервированное слово.
- Длина имени не может быть более 255 слов.
В VBA команду называют оператором, а правило записи команды - называют синтаксисом или форматом. Операторы VBA имеют такой формат: Переменная = Значение (переменной присваивается значение)
Переменные и константы
Это реальные данные, с которыми работает программа: числа, текст, логические переменные, которые принимают значения 0-«ложь», «нет», 1- «истина», «да». Эти данные называются базовыми.
В процессе работы программы значение переменной меняется, а имя – нет. Кроме имени и значения переменная характеризуется типом данных, то есть, определяется какая информация будет храниться в этой переменной, числовая, текстовая, логическая.
Перед первым использованием переменная должна быть объявлена.
Для того чтобы запретить использование необъявленных переменных, надо использовать опцию Option Explicit, которая размещается в области General-Declaration.
Объявление переменных в VBA осуществляется с помощью оператора Dim (Dimension-«размерность»)
Формат (синтаксис) этого оператора таков:
Dim ИмяПеременной1 [As Тип], ИмяПеременной2 [As тип]
Где Dim- ключевое слово, которое сообщает программе имя переменной и резервирует область памяти для хранения ее значения; As- ключевое слово.
Типы данных
Byte – для чисел целого типа от 0 до 255, в памяти занимает 1 байт.
Integer – для хранения целых чисел от -32768 до 32767, в памяти занимает 2 байта.
Long – примерно от -2 миллиардов до 2 миллиардов, в памяти занимает 4 байта.
Single – для вещественных чисел с одинарной точностью, в памяти занимает 4 байта. В мантиссе 7 чисел.
(*) 0,2345678E-10- мантисса
Double – для чисел с двойной точностью, 15 знаков в мантиссе, в памяти занимает 8 байт.
Boolean – логические данные, которые принимают значения 0 или 1, в памяти занимает 2 байта.
String – для хранения текстовых переменных, может содержать до 256 символов. 1 символ – 1 байт.
Variant – он включает в себя все типы данных. Он присваивается переменной, если ее тип не объявлен, в памяти занимает 16 байт.
Пример: Dim Cost As Integer
Dim Tovar As String, Stroka As String*20 ‘переменная товар занимает в памяти 256 байт, а переменная строка занимает в памяти 20 байт’
Линейные алгоритмы. Оператор присваивания.
X=1:X=X+5 ‘для того, чтобы отделить один оператор от другого на одной строке используется двоеточие’
В операторе присваивания справа от знака равно могут быть арифметические, логические и строковые выражения (других выражений не бывает). Любое выражение может содержать в себе имена переменных, констант и функций, объединенных знаками операций и скобками.
Основные операции:
Операции | |
Операция | Описание операции |
Математические операции | |
A^B | Возведение А в степень В |
-А | Перемена знака А |
А*В | Умножение А на В |
А/В | Деление А на В |
А\В | Целочисленное деление А на В |
А mod В | Деление по модулю А на В |
А+В | Сложение А с В |
А-В | Вычитание В из А |
Операции сравнения | |||
> | Больше | >= | Больше или равно |
< | Меньше | <= | Меньше или равно |
<> | Не равно | ||
Функция | Возвращение ф-ции | ||
Математические ф-ции | |||
Sin (A) | Синус числа А | ||
Cos (A) | Косинус числа А | ||
Tan (A) | Тангенс числа А | ||
Atn (A) | Арктангенс числа А | ||
Int (A) | Наибольшее число не превышающее А | ||
Round (A,n) | Число А округленное до n знаков после запятой | ||
Exp (A) | Показательная ф-ция числа А (е в степени х => exp(x); е в степени cos x=> exp(cos(x)) | ||
Log (A) | Натуральный логарифм числа А | ||
CInt (A) | Целое число близжайшее к А | ||
Sqr (A) | Квадратный корень из числа А | ||
Abs (A) | Абсолютное значение числа А | ||
Rnd | Случайное число |
Системные функции ввода-вывода
Формат функция ввода данных: InputBox(Приглашение [,заголовок][, Назначение] ) ‘где Приглашение – произвольный текст – подсказка, которая появиться в окне ввода, о той информации которую надо ввести в спец. Окне’