Ограничения в наименованиях:
- Первая в имени всегда буква.
- VBA не различает регистры.
- Нельзя использовать спецсимволы ($,#,%,!), пробелы, точки и спец.слова (dim и т.д.).
- Длина не больше 254 символов.
Типы данных:
- Boolean - True (что угодно, кроме 0) или False (можно поставить 0)
- Byte -
| Тип данных |
Описание |
Байт |
Диапазон |
Сокращение |
| Byte |
Целые числа |
1 (8 бит) |
0 - 255 |
|
| Boolean |
True = -1 (что угодно, кроме 0 будет преобразовано в True) или False = 0 |
2 (16 бит) |
True или False |
|
| Integer |
Целые числа |
2 |
от –32 768 до 32 767 |
% |
| Long |
Целые числа |
4 |
от –2 147 483 648 до 2 147 483 647 |
& |
| LongLong |
Целые числа (ставим ^ при объявлении в конце) |
8 |
от –9 223 372 036 854 775 808 до 9 223 372 036 854 775 807 (Действительно только для 64-разрядных платформ.) |
|
| LongPtr |
|
|
|
|
| Single |
|
4 |
|
|
| Object |
любая ссылка на объект |
4 |
|
|
| Double |
Запятая плавает в пределах диапазона. |
8 |
–1,79769313486231E308 до –4,94065645841247E-324 или
4,94065645841247E-324 до 1,79769313486232E308 |
# |
| Decimal |
Объявляется через Variant + CDec |
14 |
+/–7,9228162514264337593543950335 |
|
| Date |
Константы дат заключаем в #1 Jan 92# |
8 |
от 1 января, 100 г. до 31 декабря, 9999 г. + время |
|
| Currency |
4 знака после запятой |
8 |
от –922 337 203 685 477,5808 до 922 337 203 685 477,5807 |
@ |
| String |
|
|
|
|
| Variant (числа) |
|
16 |
Любое числовое значение до диапазона типа Double |
|
Variant
(символы) |
|
24 + длина строки |
|
|
| Type |
Пользовательский тип |
|
|
|
| Array |
|
20 + 4 (на размерность) + сами данные |
|
|
Уровни видимости:
- Dim - где указали, там и видна, в процедуре, значит там только и видно, но если в начале модуля, то видно во всем модуле!
- Public - везде такую переменную видно.
- Private - только в модуле или листе.
- Static - где объявили, там и видна. Static хранит переменную пока книгу не закрыли.
Что еще можно объявить:
- Const - константу (с ее помощью можно задать статический массив)
- Массивы - Dim myArray(0 to const1, 0 to const2) as Integer, Dim myArray() as Integer (потом объявляем через ReDim
- Range - диапазон
- Worksheet - лист
- Workbook и т.д.
- Процедуру, Функцию (ByVal - просто забираем значение, ByRef - взятое значение может быть изменено)
-
Доп. инфа:
При объявлении числовая переменная приравнивается к 0.
Переменные НЕЛЬЗЯ объявлять вот так Dim a,b,c As Integer, только последняя будет объявлена!
Преобразуем данные через StrConv.
|