Числа, имеющие 15 позиций (максимум) до десятичной точки и
4 цифры после
8 байтов
+/-9Е14
String
$
Текстовая ин-
формация
1 байт
До 65000 символов
для строк с постоян-
ной длиной и до 2
биллионов символов
для динамических
строк
Byte
Нет
Целые числа
1 байт
от 0 до 255
Boolean
Нет
Логические значения
2 байта
True или False
Date
Нет
Даты и время
8 байтов
1/1/100 до 12/31/9999
Object
Нет
Изображения
и OLE-объекты
4 байта
Нет
Variant
Нет
Любые из перечисленных типов данных
16 бай-
тов+1 байт на
каждый символ
Нет
Объявить переменную можно локально в процедуре или в общей области модуля, в последнем случае переменная доступна всем процедурам (глобально). Если отдельные данные в программе не меняются, то их проще объявить константами:
Const Пуд=16.36
Переменным можно переприсвоить значение, а константам – нет.
Практическое применение.
Предположим, нам нужен набор функций по определению площади круга, длины окружности, объема шара. Аргументом будет радиус. Дополнительной переменной (можно константой) – значение p.
Куда поместить функцию?
Конечно в модуль! Так как все макросы для любого листа вызываются именно оттуда. Нам же нужна функция, доступная к вызову из любого места.
Начиная работу в новом файле, придется сначала вставить в проект VBA модуль, а затем в модуль поместить функцию. Это можно осуществить, используя меню редактора VBA Insert.
Итак функция вставлена. Практически любая функция обрабатывает один или несколько аргументов. Следовательно необходимо в описании функции описать и аргумент. Радиус может быть дробным, следовательно, это число вещественное.
Остается присвоить функции расчетное значение. Значение p можно «добыть» из справочной системы, заглянув в раздел тригонометрических функций VBA.
Итог наших трудов:
Public Function площадь_круга(радиус!)
Dim pi#
pi=3.1415926535897932
площадь_круга=pi* радиус^2
End Function
Вызов функции осуществляется с помощью мастера функций на панели инструментов «Стандартная» из категории «Определенные пользователем». В окне диалога делаете ссылку на ячейку, содержащую значение радиуса и получаете результат.
Остальные функции выполняются аналогично.
Функции с текстовыми аргументами.
Функция шутка. Предположим есть две колонки мужских и женских имен. Необходимо составить фразы подобные «Вася+Люба= Любовь». Напомним, что с текстом возможна только операция сложения. Все текстовые символы заключаются в кавычки.