Удаление макросов

Сервис – Макрос – Макросы…, выбрать нужный макрос в списке, щелкнуть по кнопке Удалить;

4.

5.

Byte байт От 0 до 255 Dim Chislo As Byte
Boolean логический True или False Dim Chislo As Boolean
Integer целое От -32 768 до 32 767 Dim Chislo As Integer Dim Chislo%
Long длинное целое От -2 147 483 648 до 2 147 483 647 Dim Chislo As Long Dim Chislo&
Single с плавающей точкой одинарной точности От -3,402823E38 до 3,402823E38 Dim Chislo As Single Dim Chislo!
Double с плавающей точкой двойной точности От -1,79769313486232E308 до 1,79769313486232E308 Dim Chislo As Double Dim Chislo#
Currency денежный От -922 337 203 685 477,5808 до 922 337 203 685 477,5807 Dim Chislo As Currency Dim Chislo@
Decimal масштабируемое целое +/-79 228 162 514 264 337 593 543 950 335 без дробной части; +/-7,9228162514264337593543950335 с 28 знаками справа от запятой; Dim Chislo As Decimal
Date дата и время От 1 января 100 г. до 31 декабря 9999 г. Dim Chislo As Date
Object объект Любой указатель объекта Dim Chislo As Object
String строка 10 байт + число символов*1 байт для строк переменной длины и число символов*1 байт для строк постоянной длины От 0 до приблизительно 2 млрд для строк переменной длины и от 1 до приблизительно 65400 для cтрок постоянной длины Dim Chislo As String Dim Chislo$
Variant все типы данных 16 байт для чисел и 22 байт + число символов*1 байт для символов От 0 до приблизительно 2 млрд Dim Chislo Dim Chislo As Variant
Пользовательский тип данных описывается с помощью ключевого слова Type определяется включаемыми элементами Определяется диапазон каждого элемента, в зависимости от его типа данных Type MyType MyName As String MyBirthDate As Date MyHeight As Integer End Type Dim MyData As MyType

 

6. (В дополнение к в-су 5) В VBA можно создать собственные или пользовательские типы данных. Собственные типы данных целесообразно создавать тогда, когда в программе используется группа связанных элементов (переменных), относящихся к различным встроенным типам данных VBA. Пользовательские типы данных являются структурными типами данных. Пользовательский тип данных может объединить несколько связанных по смыслу переменных с различными базовыми типами данных в единую структуру. Для создания пользовательского типа данных можно применить оператор Type.

7. Все переменные в VBA, независимо от того, объявляются ли они неявно или явно, являются переменными типа Variant, если только не задается тип переменной в объявляющем ее операторе. Объявление типизированных переменных имеет ряд преимуществ:

Типизированные переменные ускоряют выполнение кода программы;

Использование типизированных переменных может значительно сократить объем памяти, требуемой для выполнения программы;

Программный код с типизированными переменными легче читается и понимается;

В программах, использующих типизированные переменные, легче обнаружить некоторые ошибки программистов;

Не возникает проблем с датами.

Тип переменной объявляется в том же операторе, который используется для объявления самой переменной. Можно объявлять типизированную переменную либо при неявном объявлении, либо при явном - с помощью оператора Dim.

Для объявления переменной и ее типа с помощью оператора Dim необходимо добавить ключевое слово As перед именем переменной, а затем ввести имя типа данных для этой переменной.

8. Константы — величины, значения которых не могут меняться. Как и переменные, константы объявляются в начале текста программного кода оператором:

Const ИмяКонстанты [As Тип] = Значение, например: Const Pi = 3.14159

В качестве значения допускается использовать только постоянные значения и их комбинации, включая арифметические и/или логические операторы.

Массив — это набор элементов определенного типа, каждый из которых имеет свой порядковый номер, называемый индексом.

Определение массива выполняется оператором:

Dim ИмяПеременной ([НижнийПредел То]

ВерхнийПредел) [As тип].

Например: Dim b (a to 15) — объявление массива b, состоящего из 15 элементов.

Visual Basic по умолчанию индексирует элементы массива, начиная с нуля, т. е. индекс 0 обозначает первый элемент массива, индекс 1 — второй и так далее. Оператор Option Base 1 позволяет задать индексацию массива с 1. Этот оператор должен находиться в секции (General) (Declarations).

Переменная — это именованная область памяти, предназначенная для хранения данных, изменяющихся в процессе выполнения программы. Для доступа к содержимому этой области памяти достаточно знать имя переменной.

Имя переменной (идентификатор) — это строка символов, которая отличает эту переменную от других объектов программы (идентифицирует переменную в программе).

При задании имен переменным нужно соблюдать следующие правила:

первым символом имени должна быть буква. Остальные символы — буквы и цифры (прописные и строчные буквы различаются). Можно использовать символ «_»;

в имени нельзя использовать символ «.»;

число символов в имени не должно превышать 255;

имя переменной не должно совпадать с зарезервированными (служебными) словами языка.

В Visual Basic существуют следующие возможности . объявления типа переменной.

Переменная может вообще не объявляться. В этом случае будет установлен по умолчанию тип Variant. Однако это может привести к медленной неэффективной работе программы и нерациональному использованию памяти.

Переменная может объявляться явно с помощью оператора определения переменной:

Dim имяПеременной [ As типПеременной],

например: Dim d as Long.

Чтобы переменные всегда объявлялись явно, нужно использовать опцию Option Explicit в секции (General) (Declarations) существующих форм, модулей или классов. После установки этой опции Visual Basic требует явного описания переменных и при использовании в коде необъявленной переменной выдаст сообщение об ошибке.

Переменная может объявляться неявно:

• с помощью оператора объявления типа:

DеfТип Начальная буква [— Конечная буква];

• вместо ОегТип указывается одно из ключевых слов, обозначающих тип:

— Deflnt (для типа Integer);

— DefLng (для типа Long);

— DefSng (для типа Single);

— DefStr (для типа String) и так далее;

• о типе переменной можно иногда судить по суффиксу, приписываемому к имени переменной. Суффиксы могут быть только у шести типов переменных:

— % — тип Integer;

— & — тип Long;

— ! — тип Single;

— # — тип Double;

— $ — тип String;

— @ — тип Currency.

Если переменная, тип которой указан неявно с помощью суффикса, встречается в программе многократно, то суффикс можно указывать только один раз при первом использовании этой переменной в программе.

9. Статический массив - это когда ты заранее знаешь, сколько переменных туда нужно будет записать, т.е. если ты объявил массив на 10 членов, то уж туда никак не запихнешь одиннадцать. В форме он объявляется так:

Dim Chislo(9) As Long

Что здесь важно.

Dim - оператор, который точно также, как и при объявлении переменной, объявляет массив и выделяет для нее память.

Chislo - ну это просто имя, придумывается также как и для переменной и отвечает тем же требованиям.

(9) - количество элементов в массиве - их 10. Почему так. Дело в том, что элементы массива нумеруются с нуля, а не с единицы, поэтому у нас десять элементов массива c номерами 0, 1, 2, 3, 4, 5, 6, 7, 8 и 9. Если для каких-то целей такой порядок тебя не устраивает, то используется оператор Option Base 1, который прописывается в разделе Declarations и привязывает первый элемент ВСЕХ, повторяю ВСЕХ, массивов в программе к единице.

As Long - определение типа данных массива так же как тип обычной переменной. Почти всегда все элементы массива имеют один и тот же тип ( в данном случае длинное число Long). На крайняк, если это не так, или если ты не знаешь какого типа будут данные, можно задать тип Variant, но это нежелательно из-за того, что это занимает значительный объем памяти, особенно если массив большой.

Размерность - ее так сразу не заметно, но она здесь присутствует и равна единице, потому, что у на одна циферка (девятка), т.е. наш массив является одномерным - по сути список значений.

Теперь создадим массив для хранения результатов, ну скажем таблицы умножения на 8. Поскольку на ноль умножать бесперспективно, привязываем первый элемент массива к единице и объявляем переменную x для организации цикла For...Next.