Инструкции Visual Basic
Инструкция
Visual Basic является полной командой. Она может содержать ключевые слова, операторы, переменные, константы и выражения. Любая инструкция относится к одной из следующих категорий:
Инструкции описания, именующие переменные, константы или процедуры, а также могут задавать типы данных.
Инструкции описания
Инструкции присвоения, которые присваивают значение или выражение переменной или константе.
Инструкции присвоения
Исполняемые инструкции, которые инициируют действие. Они могут выполнить метод или функцию, а также могут организовать повторение или ветвление блоков программы. Эти инструкции часто содержат математические или условные операторы.
Исполняемые инструкции
Продолжение инструкций на несколько строк
Обычно инструкция располагается на одной строке, но ее можно продолжить на следующую строку с помощью символа продолжения строки. В следующем примере исполняемая инструкция MsgBox продолжается на трех строках:
Sub DemoBox() 'Эта процедура описывает строковую переменную,
' присваивает ей значение Мария и выводит
' сцепленное сообщение.
Dim myVar As String
myVar = "Иван"
MsgBox Prompt:="Привет " & myVar, _
Title:="Приветствие", _
Buttons:=vbExclamation
End Sub
Комментарии
Комментарии позволяют объяснить процедуру или определенную инструкцию всем читателям программы. Когда процедура выполняется, Visual Basic игнорирует комментарии. Строки комментария начинаются с апострофа (') или со слова Rem, за которым следует пробел. Их можно вносить в любое место процедуры. Чтобы внести комментарий в строку, на которой расположена инструкция, после инструкции следует поставить апостроф, а за ним комментарий. По умолчанию комментарии выделяются в тексте зеленым цветом.
Проверка синтаксических ошибок
Если после набора строки и нажатия клавиши ENTER строка выделяется красным цветом (может появиться также сообщение об ошибке), необходимо выяснить, что неправильно в данной инструкции и исправить ее.
Метод Add
Добавляет объект в семейство.
Синтаксис
объект.Add(компонент)
Синтаксис метода Add содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Для семейства LinkedWindows это объект. Для семейства VBComponents -- специальная константа, представляющая модуль класса, форму или стандартный модуль.
В качестве аргумента компонент может использоваться одна из следующих констант:
Константа
Описание
vbext_ct_ClassModule
Добавляет модуль класса в семейство.
Vbext_ct_MSForm
Добавляет форму в семейство.
Vbext_ct_StdModule
Добавляет стандартный модуль в семейство.
Дополнительные сведения
Для семейства LinkedWindows метод Add добавляет окно в семейство текущих связанных окон.
Примечание. Пользователь может добавить окно, являющееся областью связанной рамки окна, в другое связанное окно, просто передвинув окно из одной области в другую. Если связанная рамка окна, из которой окно было передвинуто, не содержит других областей, она разрушается.
Для семейства VBComponents метод Add создает новый стандартный компонент и добавляет его в проект.
Для семейства VBComponents метод Add возвращает объект VBComponent. Для семейства LinkedWindows метод Add возвращает значение Nothing.
Метод AddFromFile
Для семейства References добавляет ссылку на проект из некоторого файла. Для объекта CodeModule добавляет содержимое файла в модуль.
Синтаксис
объект.AddFromFile(имя_файла)
Синтаксис метода AddFromFile содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Строковое выражение, определяющее имя файла, которое добавляется в проект или модуль. Если имя файла не найдено и путь к нему не указан, поиск проводится в каталогах, найденных с помощью функции Windows OpenFile.
Дополнительные сведения
Для объекта CodeModule метод AddFromFile вставляет содержимое файла, начиная со строки, предшествующей первой процедуре в программном модуле. Если модуль не содержит процедур, метод AddFromFile помещает содержимое файла в конец модуля.
Метод AddFromGuid
Добавляет ссылку в семейство Reference с помощью уникального кода ссылки (GUID).
Синтаксис
объект.AddFromGuid(GUID, старший, младший) As Reference
Синтаксис метода AddFromGuid содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Строковое выражение, представляющее код GUID ссылки.
Обязательный. Переменная типа Long, указывающая номер старшей версии ссылки.
Обязательный. Переменная типа Long, указывающая номер младшей версии ссылки.
Дополнительные сведения
Чтобы найти ссылку, которую необходимо добавить, метод AddFromGuid ищет реестр. GUID может быть библиотекой типов, элементом управления, идентификатором класса и т.д.
Метод AddFromString
Добавляет текст в модуль.
Синтаксис
объект.AddFromString
Прототип объект представляет собой объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Дополнительные сведения
Метод AddFromString вставляет текст, начиная со строки, предшествующей первой процедуре в модуле. Если модуль не содержит процедур, метод AddFromString помещает текст в конец модуля.
Метод Close
Закрывает и уничтожает окно.
Синтаксис
объект.Close
Прототип объект представляет собой объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Дополнительные сведения
Метод Close по-разному действует на следующие типы окон:
Если окно является областью окна программы, Close разрушает эту область.
Если окно является конструктором, Close
уничтожает содержащийся в нем конструктор.
Если окно должно всегда оставаться доступным в пункте меню Вид, метод Close скрывает такое окно.
Метод CreateEventProc
Создает процедуру обработки события.
Синтаксис
объект.CreateEventProc(событие, источник) As Long
Синтаксис метода CreateEventProc содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Строковое выражение, указывающее имя события, которое добавляется в модуль.
Обязательный. Строковое выражения, указывающее имя объекта, который является источником события.
Дополнительные сведения
Метод CreateEventProc используется для создания процедуры обработки события. Например, чтобы создать процедуру обработки события "Нажатие кнопки" (Click) для элемента управления Command Button с именем Command1, можно использовать следующий код (CM представляет собой объект типа CodeModule):
TextLocation = CM.CreateEventProc("Нажатие кнопки", "Command1")
Метод CreateEventProc возвращает строку, с которой начинается основная часть процедуры обработки события. CreateEventProc не сработает, если аргументы относятся к несуществующему событию.
Метод DeleteLines
Стирает одну строку или указанную последовательность строк.
Синтаксис
объект.DeleteLines (строка [, количество])
Синтаксис метода DeleteLines содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Переменная типа Long, указывающая номер первой строки, которую надо стереть.
Необязательный. Переменная типа Long, указывающая количество строк, которые надо стереть.
Дополнительные сведения
Если число стираемых строк не указано, DeleteLines сотрет одну строку.
Метод Export
Сохраняет компонент как отдельный файл или файлы.
Синтаксис
объект.Export(имя_файла)
Синтаксис метода Export содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Переменная типа String, указывающая имя файла, в котором будет сохранен компонент.
Дополнительные сведения
Если метод Export используется для сохранения компонента как отдельного файла или файлов, имя этого файла не должно совпадать с именем уже существующего файла, иначе возникает ошибка.
Метод Find
Ищет активный модуль, содержащий указанную строку.
Синтаксис
объект.Find(образец, строка1, столбец1, строка2, столбец2 [, слово] [, регистр] [, выражение]) As Boolean
Синтаксис метода Find содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Переменная типа String, значением которой является искомый текст или образец.
Обязательный. Переменная типа Long, указывающая номер строки, с которой начинается поиск. Если найден текст, совпадающий с образцом, получает значение номера первой строки найденного текста.
Обязательный. Переменная типа Long, указывающая номер столбца, с которого начинается поиск. Если найден текст, совпадающий с образцом, получает значение номера первого столбца найденного текста.
Обязательный. Переменная типа Long, указывающая номер последней строки совпадающего с образцом текста (если он найден).
Обязательный. Переменная типа Long, указывающая номер последнего столбца совпадающего с образцом текста (если он найден).
Необязательный. Переменная типа Boolean, указывающая, что проводится поиск слов только целиком; в этом случае для нее задается значение True. По умолчанию имеет значение False.
Необязательный. Переменная типа Boolean, указывающая, что поиск проводится с учетом буквенного регистра; в этом случае для нее задается значение True. По умолчанию имеет значение False.
Необязательный. Переменная типа Boolean, указывающая, что образцом представляет собой правильное выражение; в этом случае для нее задается значение True. По умолчанию имеет значение False.
Дополнительные сведения
Если найден текст, совпадающий с образцом, метод Find возвращает значение True, в противном случае -- значение False.
Аргументы регистр и образец являются взаимоисключающими. Если оба аргумента имеют значение True, возникает ошибка.
Метод Find не влияет на содержимое диалогового окна Find.
Метод GetSelection
Возвращает выделенный фрагмент в области окна программы.
Синтаксис
объект.GetSelection(строка1, столбец1, строка2, столбец2)
Синтаксис метода GetSelection содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Переменная типа Long, указывающая номер первой строки выделенного фрагмента в области окна программы.
Обязательный. Переменная типа Long, указывающая номер первого столбца выделенного фрагмента в области окна программы.
Обязательный. Переменная типа Long, указывающая номер последней строки выделенного фрагмента в области окна программы.
Обязательный. Переменная типа Long, указывающая номер последнего столбца выделенного фрагмента в области окна программы.
Дополнительные сведения
При использовании метода GetSelection информация содержится в возвращаемых значениях аргументов. Следовательно, надо использовать переменные, которые будут возвращать информацию путем модификации их значений.
Метод Import
Добавляет компонент в проект из файла; возвращает этот вновь добавленный компонент.
Синтаксис
объект.Import(имя_файла) As VBComponent
Синтаксис метода Import содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Переменная типа String, указывающая путь и имя для файла, из которого извлекается компонент.
Дополнительные сведения
Метод Import может использоваться для добавления в проект компонента, формы, модуля, класса, и т.д.
Метод InsertLines
Вставляет одну или несколько строк в указанное место программы.
Синтаксис
объект.InsertLines(строка, текст)
Синтаксис метода InsertLines содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Переменная типа Long, указывающая место в программе, куда вставляются новые строки.
Обязательный. Переменная типа String, содержащая вставляемый текст.
Дополнительные сведения
Если вставляемый с помощью InsertLines текст содержит символы возврата каретки с переводом строки, он будет вставлен в виде последовательности строк.
Метод Item
Возвращает компонент семейства с заданным номером.
Синтаксис
объект.Item(индекс)
Синтаксис метода Item содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Выражение, определяющее положение компонента в семействе. Если этот аргумент задается с помощью числового выражения, то индекс должен иметь значение от 1 до значения свойства Count для семейства. Если этот аргумент задается с помощью строкового выражения, то его значение должно совпадать со значением аргумента key, которое указывается при добавлении компонента в семейство.
В следующей таблице перечислены семейства и соответствующие им аргументы key для использования с методом Item. Строка, передаваемая в метод Item должна совпадать с аргументом key семейства.
Семейство
Аргумент Key
Windows
Значение свойства Caption
LinkedWindows
Значение свойства Caption
CodePanes
Специальная строка не предусмотрена.
VBProjects
Значение свойства Name
VBComponents
Значение свойства Name
References
Значение свойства Name
Properties
Значение свойства Name
Дополнительные сведения
Аргумент индекс может быть числовым значением или строкой, содержащей заголовок объекта.
Метод Lines
Возвращает указанные строки программы.
Синтаксис
объект.Lines(строка, количество) As String
Синтаксис метода Lines содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Переменная типа Long, указывающая номер первой строки возвращаемого текста
Обязательный. Переменная типа Long, указывающая количество строк возвращаемого текста.
Дополнительные сведения
Номера строк в программном модуле начинаются с 1.
Метод ProcBodyLine
Возвращает первую строку процедуры.
Синтаксис
объект.ProcBodyLine(имя_процедуры, тип_процедуры) As Long
Синтаксис метода ProcBodyLine содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Переменная типа String, содержащая имя процедуры.
Обязательный. Указывает вид процедуры, которую надо найти. Поскольку в модуле может находиться несколько различных процедур Property, необходимо указывать вид искомой процедуры. Все процедуры, отличные от процедур-свойств (т.е., процедуры Sub и Function) используют аргумент vbext_pk_Proc.
В качестве аргументатип_процедуры используются следующие константы:
Константа
Описание
vbext_pk_Get
Соответствует процедуре, возвращающей значение свойства.
vbext_pk_Let
Соответствует процедуре, присваивающей свойству значение.
vbext_pk_Set
Соответствует процедуре, задающей ссылку на объект.
vbext_pk_Proc
Используется со всеми процедурами, отличными от процедур-свойств.
Дополнительные сведения
Первой строкой процедуры является строка, на которой находится инструкция Sub, Function или Property.
Метод ProcCountLines
Возвращает количество строк в указанной процедуре.
Синтаксис
объект.ProcCountLines(имя_процедуры, тип_процедуры) As Long
Синтаксис метода ProcCountLines содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Переменная типа String, содержащая имя процедуры.
Обязательный. Указывает вид процедуры, которую надо найти. Поскольку в модуле может находиться несколько различных процедур Property, необходимо указывать вид искомой процедуры. Все процедуры, отличные от процедур-свойств(т.е., процедуры Sub и Function) используют аргумент vbext_pk_Proc.
В качестве аргументатип_процедуры используются следующие константы:
Константа
Описание
vbext_pk_Get
Соответствует процедуре, возвращающей значение свойства.
vbext_pk_Let
Соответствует процедуре, присваивающей свойству значение.
vbext_pk_Set
Соответствует процедуре, задающей ссылку на объект.
vbext_pk_Proc
Используется со всеми процедурами, отличными от процедур-свойств.
Дополнительные сведения
Метод ProcCountLines учитывает все пустые строки или строки комментария, предшествующие описанию процедуры, и, если процедура является последней в программном модуле, все пустые строки, следующие за процедурой.