Операторы VBA Для успешного программирования на любом языке программирования, нужно знать основные операторы языка. Наже перечислены основные операторы VBA. AppActivate title, wait – Активизирует открытое приложение по заданному аргументом title заголовку или идентификатору задачи Beep – подача звукового сигнала Call name, argumentlist – Вызов процедуры с названием name. (Поскольку ключевое слово Call необязательно и можно вызвать процедуру, используя только ее имя, этот оператор редко используется в программировании VBA) ChDir path – Заменяет текущую папку папкой, указанной аргументом path Close filenumberlist – Изменяет текущий диск на диск, указанный аргументом drive Const CONSTNAME – Объявляет константой переменную с именем CONSTNAME Date = date – Изменяет системную дату на дату, указанную аргументом date Declare name – Объявляет процедуру из динамически присоединяемой библиотеки (DLL) DefBool letterrange – Оператор уровня модуля, устанавливающий тип Boolean типом данных по умолчанию для всех переменных, которые начинаются с букв, указанных аргументом letterrange (например, DefBool A-F) DefByte letterrange – Задает тип Byte как тип данных по умолчанию для всех переменных, которые начинаются с букв, указанных аргументом letterrange DefCur letterrange - Задает тип Currency как тип данных по умолчанию для всех переменных, которые начинаются с букв, указанных аргументом letterrange DefDate letterrange - Задает тип Date как тип данных по умолчанию для всех переменных, которые начинаются с букв, указанных аргументом letterrange DefDbl letterrange - Задает тип Double как тип данных по умолчанию для всех переменных, которые начинаются с букв, указанных аргументом letterrange DefInt letterrange - Задает тип Integer как тип данных по умолчанию для всех переменных, которые начинаются с букв, указанных аргументом letterrange DefLng letterrange - Задает тип Long как тип данных по умолчанию для всех переменных, которые начинаются с букв, указанных аргументом letterrange DefObj letterrange - Задает тип Object как тип данных по умолчанию для всех переменных, которые начинаются с букв, указанных аргументом letterrange DefSng letterrange - Задает тип Single как тип данных по умолчанию для всех переменных, которые начинаются с букв, указанных аргументом letterrange DefStr letterrange - Задает тип String как тип данных по умолчанию для всех переменных, которые начинаются с букв, указанных аргументом letterrange DefVar letterrange - Задает тип Variant как тип данных по умолчанию для всех переменных, которые начинаются с букв, указанных аргументом letterrange DeleteStting appname, section, key – Удаляет раздел section или ключ key из реестра Windows Dim varname – Объявляет переменную с именем varname Do…Loop – Выполняет цикл по нескольким операторам до тех пор, пока логическое условие равно True End Keyword – Завершает процедуру, функцию или управляющую структуру Enum name – Оператор уровня модуля, который объявляет переменную перечислимого типа Erase arraylist – Очищает память от динамически выделенного массива или выполняет повторную инициализацию массива с фиксированными размерами Error errornumber – Имитирует ошибку, присваивая объекту Err значение errornumber Event procedurename(arglist) – Оператор может присутствовать только в модуле класса. Он объявляет событие, определенное пользователем Exit keyword – Выход из процедуры, функции или управляющей структуры FileCopy source, destination – Копирует файл source в папку destination (при этом можно изменить имя исходного файла) For Each…Next – Цикл по каждому члену коллекции For…Next – Цикл по нескольким операторам, выполняемый до тем пор, пока счетчик цикла не достигнет заданного значения Function – Объявляет пользовательскую процедуру-функцию Get #filenumber, varname – Производит чтение в переменную из файла ввода-вывода, открытого оператором Open GoSub…Return – Осуществляет вход в подпрограмму, описанную в процедуре, и выход из нее. (Использование этого оператора не рекомендуется, поскольку создание отдельной процедуры позволит сделать код более простым для понимания) GoTo line – Передает управление на строку кода, на которую указывает метка line If…Then…Else – Выполняет один из двух фрагментов кода на основе результата логической проверки Imlements InterfaceName, Class – Определяет название интерфейса или класса, который будет реализован в модуле класса Input #filenumber, varlist – Производит чтение из файла ввода-вывода в переменные Kill pathname – Удаляет файл pathname с диска Let varname = expression – Устанавливает переменную varname равной выражению expression. Ключевое слово Let необязательно и практически никогда не используется Line Input #filenumber, var – Производит чтение одной строки из файла ввода-вывода и сохраняет ее в строковой переменной Load – Загружает форму в память, но не выводит ее на экран Lock #filenumber, recordrange – Управляет доступом к файлу ввода-вывода LSet stringvar = string – Размещает строку, начиная с крайнего слева символа, в переменной типа String. При этом размер переменной не изменяется LSet var1 = var2 – Копирует переменную одного пользовательского типа в переменную другого, но совместимого, пользовательского типа Mid – Заменяет заданное количество символов в строковой переменной символами из другой строки MidB – Побайтно заменяет символы в строковой переменной символами из другой строки MkDir path – Создает папку с именем path Name oldpathname as newpathname – Изменяет имя файла или папки On Error – Задает способ обработки ошибок On…GoSub, On…GoTo – Передает управление заданной строке на основе результата выражения Open pathname, … – Открывает файл для ввода-вывода Option Base 0|1 – Задает (на уровне модуля) для массивов установленную по умолчанию нижнюю границу (номер первого элемента) Option Compare Text|Binary – Определяет (на уровне модуля) установленный по умолчанию режим сравнения строк Option Explicit – Принуждает программиста к явному объявлению переменных. Введите этот оператор на уровне модуля Option Private – Указывает, что модуль закрыт, и к нему нельзя обратиться из процедур, расположенных в других модулях. Введите оператор на уровне модуля Print #filenumber – Производит запись в файл ввода-вывода Private varname – Объявляет, что переменная varname будет закрытой, и ею можно будет пользоваться только в модуле, в котором она объявлена. Введите оператор на уровне модуля Property Get – Объявляет процедуру свойства, которая будет принимать значения этого свойства Property Let – Присваивает значение свойству в процедуре свойства Property Set – Устанавливает ссылку на объект в процедуре свойства Public varname – Открывает доступ к переменной varname для всех процедур, содержащихся в модуле Put #filenumber, varname – Записывает данные из переменной varname а файл ввода-вывода RaiseEvent eventname, arguments – Вызывает событие с именем eventname Randomize number – Инициализирует генератор случайных чисел. Пропустить аргумент number, чтобы каждый раз инициализировать его разными начальными числами ReDim varname – Повторно выделяет память для динамического массива Rem comment – Указывает VBA, что следующий за оператором текст является комментарием. Вместо этого оператора чаще используется символ апострофа Reset – Закрывает все файлы ввода-вывода, которые были ранее открыты оператором Open Resume – После возникновения ошибки возобновляет выполнение программы со строки, в которой возникла ошибка RmDir path – Удаляет папку RSet stringvar = string – Записывает строку в строковую переменную, выравнивая символы по правому краю SaveSetiing appname, … – Создает или сохраняет установки в реестре Windows Seek #filenumber, position – Устанавливает текущую позицию в файле ввода-вывода Select Case – Выполняет группу операторов на основе значения выражения SendKeys string, wait – Передает в активное приложение нажатия клавиш, заданные строкой string так, как будто они были введены с клавиатуры Set objectvar = object – Присваивает объект object объектной переменной с именем objectvar SetAttr pathname, attr – Задает атрибуты доступа, определенные аргументом attr (например, vbReadOnly) для файла, заданного аргументом pathname Static varname – Объявляет (на уровне модуля), что переменная varname будет сохранять свои значения все время, пока будет выполняться код модуля Stop – Переводит VBA в режим паузы Sub – Объявляет процедуру Time = time – Устанавливает системное время равным аргументу time Type varname – Объявляет пользовательский тип данных. (Используется только на уровне модуля) Unload – Удаляет форму из памяти Unlock #filenumber, recordrange – Удаляет атрибуты доступа для файла ввода-вывода While…Wend – Выполняет цикл по группе операторов до тех пор, пока логическое условие истинно Width #filenumber, width – Задает ширину строки для файла ввода-вывода With…End With – Выполняет группу операторов для заданного объекта Write #filenumber – Производит запись данных в файл ввода-вывода