Метод ProcOfLine
Возвращает имя процедуры, содержащей строку с указанным номером.
Синтаксис
объект.ProcOfLine(строка, тип_процедуры) As String
Синтаксис метода ProcOfLine содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Переменная типа Long, указывающая номер искомой строки.
Обязательный. Указывает вид процедуры, которую надо найти. Поскольку в модуле может находиться несколько различных процедур Property, необходимо указывать вид искомой процедуры. Все процедуры, отличные от процедур-свойств(т.е., процедуры Sub и Function) используют аргумент vbext_pk_Proc.
В качестве аргументатип_процедуры используются следующие константы:
Константа
Описание
vbext_pk_Get
Соответствует процедуре, возвращающей значение свойства.
vbext_pk_Let
Соответствует процедуре, присваивающей свойству значение.
vbext_pk_Set
Соответствует процедуре, задающей ссылку на объект.
vbext_pk_Proc
Используется со всеми процедурами, отличными от процедур-свойств.
Дополнительные сведения
Пустые строки или строки комментария, предшествующие описанию процедуры, а также, если процедура является последней в программном модуле, все пустые строки, следующие за процедурой, считаются находящимися внутри процедуры.
Метод ProcStartLine
Возвращает строку, с которой начинается указанная процедура.
Синтаксис
объект.ProcStartLine(имя_процедуры, тип_процедуры) As Long
Синтаксис метода ProcStartLine содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Переменная типа String, содержащая имя процедуры.
Обязательный. Указывает вид процедуры, которую надо найти. Поскольку в модуле может находиться несколько различных процедур Property, необходимо указывать вид искомой процедуры. Все процедуры, отличные от процедур-свойств(т.е., процедуры Sub и Function) используют аргумент vbext_pk_Proc.
В качестве аргументатип_процедуры используются следующие константы:
Константа
Описание
vbext_pk_Get
Соответствует процедуре, возвращающей значение свойства.
vbext_pk_Let
Соответствует процедуре, присваивающей свойству значение.
vbext_pk_Set
Соответствует процедуре, задающей ссылку на объект.
vbext_pk_Proc
Используется со всеми процедурами, отличными от процедур-свойств.
Дополнительные сведения
Процедура начинается со строки, следующей за инструкцией End Sub предшествующей процедуры. Если процедура является первой, она начинается сразу после общего раздела описаний.
Метод Remove
Удаляет компонент из семейства.
Синтаксис
объект.Remove(компонент)
Синтаксис метода Remove содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Для семейства LinkedWindows это объект. Для семейства References -- ссылка на библиотеку типов или на проект. Для семейства VBComponents -- специальная константа, представляющая модуль класса, форму или стандартный модуль.
Дополнительные сведения
Если метод Remove используется для семейства LinkedWindows, он удаляет окно из текущего семейства связанных окон. Удаленное окно становится перемещаемым окном, которое имеет свою собственную связанную рамку окна.
Метод ReplaceLine
Замещает одну строку программы другой.
Синтаксис
объект.ReplaceLine(строка, текст)
Синтаксис метода ReplaceLine содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Переменная типа Long, указывающая номер строки, которую надо заменить другой.
Обязательный. Переменная типа String, содержащая вставляемую строку.
Метод SetFocus
Передает фокус указанному окну.
Синтаксис
объект.SetFocus
Прототип объект представляет собой объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Дополнительные сведения
Метод SetFocus используется для окон, которые уже являются видимыми.
Метод SetSelection
Выделяет фрагмент в области окна программы.
Синтаксис
объект.SetSelection(строка1, столбец1, строка2, столбец2)
Синтаксис метода SetSelection содержит следующие элементы:
Элемент
Описание
Обязательный. Объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Обязательный. Переменная типа Long, указывающая номер первой строки выделенного фрагмента.
Обязательный. Переменная типа Long, указывающая номер первого столбца выделенного фрагмента.
Обязательный. Переменная типа Long, указывающая номер последней строки выделенного фрагмента.
Обязательный. Переменная типа Long, указывающая номер последнего столбца выделенного фрагмента.
Метод Show
Выводит указанную область окна программы на передний план.
Синтаксис
объект.Show
Прототип объект представляет собой объектное выражение, значением которого является один из объектов, перечисленных в списке "Применение".
Дополнительные сведения
Метод Show передает фокус указанной области программы в данном окне.
Пример использования метода Add
В данном примере метод Add используется для добавления одного стандартного модуля в семейство VBComponents.
Application.VBE.VBProjects(1).VBComponents.Add(vbext_ct_StdModule)
Пример использования метода AddFromFile
В данном примере метод AddFromFile используется для добавления содержимого некоторого файла в указанную область окна программы.
Application.VBE.CodePanes(3).CodeModule.AddFromFile "c:\Code Files\book2.frm"
Пример использования метода AddFromGUID
В данном примере метод AddFromGUID используется для добавления ссылки на текущий проект. Для этого указывается ссылка с помощью значения кода GUID объекта Reference.
Application.VBE.ActiveVBProject.References.AddFromGuid("", 5, 0)
Пример использования метода AddFromString
В данном примере метод AddFromString используется для добавления строки "Dim intJack As Integer" в указанную область окна программы.
Application.VBE.CodePanes(3).CodeModule.AddFromString "Dim intJack As Integer"
Пример использования метода Close
В данном примере метод Close закрывает указанный компонент семейства Windows.
Application.VBE.Windows(9).Close
Пример использования метода CreateEventProc
В данном примере метод CreateEventProc используется для создания процедуры Button_Click.
Debug.Print Application.VBE.SelectVBComponents.CodeModule.CreateEventProc("Нажмите ", "кнопку ")
Пример использования метода DeleteLines
Следующий пример состоит из двух частей. Первый цикл For:Next с помощью метода InsertLines вставляет в область окна программы CodePanes(1) 26 последовательно удлиняющихся сегментов латинского алфавита, начиная с буквы "a". Последний вставленный сегмент представляет собой весь алфавит.
Во второй части цикл For:Next использует метод DeleteLines для удаления строк с нечетными номерами. На первый взгляд кажется, что второй цикл должен просто стирать каждую вторую строку, однако следует принять во внимание, что после каждой операции удаления нумерация строк производится заново. Следовательно, на каждом шаге стирается каждая третья строка: первая строка пропускается, так как I увеличивается на единицу, а вторая -- поскольку больший номер строки каждый раз уменьшается на единицу.
For I = 1 to 26
Application.VBE.SelectedVBComponent.CodeModule.InsertLines i, Mid$("abcdefghijklmnopqrstuvwxyz", 1, I)
Next
For I = 1 to 13
Application.VBE.SelectedVBComponent.CodeModule.DeleteLines I
Next
Пример использования метода Export
В данном примере создается файл с именем test.bas и с помощью метода Export, в него копируется содержимое стандартного модуля VBComponents(1).
Application.VBE.ActiveVBProject.VBComponents(1).Export("test.bas")
Пример использования метода Find
В данном примере с помощью метода Find устанавливается, что указанная последовательность строк в области окна программы (строки с 1261 по 1279) содержит строку "Tabs.Clear".
Application.VBE.CodePanes(2).CodeModule.Find ("Tabs.Clear", 1261, 1, 1280, 1, False, False)
Пример использования метода GetSelection
В следующем примере возвращается местоположение начальных и конечных координат выделенного фрагмента в области окна программы CodePanes(1). В последней строке примера метод GetSelection используется для присвоения четырех значений четырем переменным.
Dim m As Long
Dim n As Long
Dim x As Long
Dim y As Long
Application.VBE.CodePanes(1).GetSelection m, n, x, y
Пример использования метода Import
В данном примере метод Import семейства VBComponents используется, чтобы скопировать содержимое файла test.bas в стандартный модуль.
Application.VBE.ActiveVBProject.VBComponents.Import("test.bas")
Пример использования метода InsertLines
В данном примере метод InsertLines используется, чтобы вставить строку "Option Explicit" в указанную область окна программы.
Application.VBE.CodePanes(1).CodeModule.InsertLines 1, "Option Explicit"
Пример использования метода Item
В данном примере показаны два способа вывода на экран указанного компонента семейства CodePanes; в одном из них используется метод Item.
Application.VBE.CodePanes.Item(2).Show
Application.VBE.CodePanes(2).Show
Пример использования метода Lines
В данном примере метод Lines используется для возвращения указанного блока программы (строки с 1 по 4) в определенную область окна программы.
Debug.Print Application.VBE.CodePanes(1).CodeModule.Lines( 1, 4)
Пример использования метода ProcBodyLine
В данном примере метод ProcBodyLine используется для возвращения номера первой строки процедуры SetupTabs в определенную область окна программы.
Debug.Print Application.VBE.CodePanes(3).CodeModule.ProcBodyLine ("SetupTabs", vbext_pk_Proc)
Пример использования метода ProcCountLines
В данном примере метод ProcCountLines используется для возвращения указанного числа строк процедуры SetupTabs в определенную область окна программы.
Debug.Print Application.VBE.CodePanes(3).CodeModule.ProcCountLines ("SetupTabs", vbext_pk_Proc)
Пример использования метода ProcOfLine
В данном примере метод ProcOfLine используется для возвращения имени процедуры, содержащей строку с указанным номером, в определенную область окна программы.
Debug.Print Application.VBE.CodePanes(3).CodeModule.ProcOfLine (1270, vbext_pk_Proc)
Пример использования метода ProcStartLine
В данном примере метод ProcStartLine используется для возвращения строки, с которой начинается указанная процедура, в определенную область окна программы.
Debug.Print Application.VBE.CodePanes(3).CodeModule.ProcStartLine ("SetupTabs", vbext_pk_Proc)
Пример использования метода Remove
В данном примере устанавливается, что определенный компонент семейства VBComponents является модулем, а затем этот модуль удаляется с помощью метода Remove.
Debug.Print Application.VBE.ActiveVBProject.VBComponents(4).Name
Application.VBE.ActiveVBProject.VBComponents.Remove Application.VBE.ActiveVBProject.VBComponents(4)
Пример использования метода ReplaceLine
Следующий пример состоит из двух частей. Первый цикл For:Next с помощью метода InsertLines вставляет в область окна программы CodePanes(1) 26 последовательно удлиняющихся сегментов латинского алфавита, начиная с буквы "a". Последний вставленный сегмент представляет собой весь алфавит.
Второй цикл For:Next с помощью метода ReplaceLine замещает строку с четным номером последним символом текста, который содержался в этой строке ранее. Строки с нечетными номерами не изменяются.
For I = 1 to 26
Application.VBE.CodePanes(1).CodeModule.InsertLines I, Mid$("abcdefghijklmnopqrstuvwxyz", 1, I)
Next I
For I = 1 to 13
Application.VBE.CodePanes(1).CodeModule.ReplaceLine 2*I, Mid$("abcdefghijklmnopqrstuvwxyz", 1, I)
Next I
Пример использования метода SetFocus
В данном примере метод SetFocus используется для установки фокуса на определенный компонент семейства Windows. Другими словами, он вызывает те же последствия, что и выделение мышью заголовка данного окна.
Application.VBE.Windows(9).SetFocus
Пример использования метода SetSelection
В данном примере метод SetSelection используется для выделения участка текста, первый символ которого совпадает с символом, который следует непосредственно за четвертым символом второй строки CodePanes(1), а последний совпадает с пятнадцатым символом третьей строки.
Application.VBE.CodePanes(1).SetSelection 2,4,3,15
Пример использования метода Show
В данном примере метод Show используется для вывода указанной области окна программы на передний план.
Application.VBE.CodePanes(2).Show
Событие Click
Данное событие происходит, когда установлено свойство OnAction для соответствующего элемента управления на панели команд.
Синтаксис
Sub объект_Click (ByVal ctrl As Object, ByRef handled As Boolean, ByRef canceldefault As Boolean)
Синтаксис события Click (Нажатие кнопки) содержит следующие именованные аргументы:
Элемент
Описание
Обязательный; тип данных Object. Указывает объект -- источник события "Нажатие кнопки" (Click).
Обязательный; тип данных Boolean. Если его значение равно True, событие должно обрабатываться с помощью других надстроек. Если False -- действие элемента панели команд не было обработано.
Обязательный; тип данных Boolean. Если его значение равно True, выполняются действия, предусмотренные по умолчанию, до их отмены надстройкой, обрабатывающей нисходящий поток команд. Если False -- действия, предусмотренные по умолчанию не выполняются до их восстановления надстройкой, обрабатывающей нисходящий поток команд.
Дополнительные сведения
Событие Click с объектом CommandBarEvents выполняется особым образом. С помощью ключевого слова WithEvents описывается переменная, определяющая событие Click для элемента управления CommandBar. Этой переменной будет присвоено возвращаемое значение свойства CommandBarEvents объекта Events. Свойство CommandBarEvents использует элемент управления CommandBar в качестве аргумента. При выборе элемента управления CommandBar (для переменной, описанной с помощью ключевого слова WithEvents) выполняется программа.
Событие ItemAdded
Данное событие происходит после добавления ссылки.
Синтаксис
Sub объект_ItemAdded(ByVal элемент As Reference)
Обязательный аргумент элемент указывает добавленный объект.
Дополнительные сведения
Событие ItemAdded (Элемент добавлен) происходит, когда объект Reference добавляется в семейство References.
Событие ItemRemoved
Данное событие происходит после удаления ссылки из проекта.
Синтаксис
Sub объект_ItemRemoved(ByVal элемент As Reference)
Обязательный аргумент элемент указывает объект Reference, который был удален.
Пример события "Нажатие кнопки" (Click)
В данном примере проиллюстрировано, как можно написать программу для процедуры события "Нажатие кнопки" (Click) с помощью инструкций WithEvents и Set. Следует отметить, что вместо пункта меню Сервис в имени события "Нажатие кнопки" (Click) используется ссылка на объект ce.
Private WithEvents ce As CommandBarEvents
Sub Test()
Dim c As CommandBarControl
Set c = Application.VBE.CommandBars("Сервис").Controls(1)
Set ce = Application.VBE.Events.CommandBarEvents(c)
End Sub
Private Sub ce_Click(ByVal CommandBarControl As Object, Handled As Boolean, CancelDefault As Boolean)
' Место для инструкций обработки события.
End Sub
Свойство ActiveCodePane
Возвращает активный или последний активный объект CodePane или указывает активный объект CodePane. Чтение/запись.
Дополнительные сведения
В свойстве ActiveCodePane можно указать любой допустимый объект CodePane, как показано в следующем примере:
Set MyApp.VBE.ActiveCodePane = MyApp.VBE.CodePanes(1)
Эта инструкция делает активной областью программы первую область программы в семействе областей программы. Область программы можно также сделать активной с помощью метода Set.
Свойство ActiveVBProject
Возвращает активный проект в окно проекта. Только для чтения.
Дополнительные сведения
Свойство ActiveVBProject возвращает проект, выделенный в окне проекта или проект, содержащий выделенный компонент. В последнем случае проект не обязан быть выделенным. Вне зависимости от того, имеется ли проект, выделенный явным образом, всегда существует активный проект.
Свойство ActiveWindow
Возвращает активное окно в среде разработчика. Только для чтения.
Дополнительные сведения
Если в среде разработчика открыто несколько окон, значением свойства ActiveWindow является окно, имеющее фокус. Когда фокус имеет главное окно, свойство ActiveWindow возвращает значение Nothing.
Свойство BuiltIn
Возвращает значение типа Boolean, указывающее, является ли ссылка стандартной ссылкой, которую нельзя удалить. Только для чтения.
Возвращаемые значения
Свойство BuiltIn возвращает следующие значения:
Значение
Описание
True
Ссылка является стандартной ссылкой, которую нельзя удалить.
False
Ссылка не является стандартной ссылкой и может быть удалена.
Свойство Caption
Возвращает значение типа String, содержащее заголовок активного окна. Только для чтения.
Дополнительные сведения
Заголовком активного окна называют текст, выводящийся в строке заголовка окна.
Свойство CodeModule
Возвращает объект, представляющий программу, определенную для компонента. Только для чтения.
Дополнительные сведения
Свойство CodeModule возвращает значение Nothing, если компонент не имеет связанного с ним программного модуля.
Примечание. Объект CodePane представляет видимое окно программы. Конкретный компонент может иметь несколько объектов CodePane. Объект CodeModule представляет программу, определенную для компонента. Каждому компоненту может соответствовать только один объект CodeModule.
Свойство CodePane
Возвращает объект CodePane. Только чтение.
Дополнительные сведения
Если область программы существует, она становится активной областью программы, а содержащее ее окно - активным окном. Если области программы для модуля не существует, свойство CodePane создает ее.
Свойство CodePanes
Возвращает семейство активных объектов CodePane. Только для чтения.
Свойство CodePaneView
Возвращает значение, указывающее, находится ли область программы в режиме просмотра процедуры или в режиме просмотра модуля. Только для чтения.
Возвращаемые значения
Свойство CodePaneView возвращает следующие значения:
Константа
Описание
vbext_cv_ProcedureView
Указанная область программы находится в режиме просмотра процедуры.
Vbext_cv_FullModuleView
Указанный проект находится в режиме просмотра модуля.
Свойство Collection
Возвращает семейство, содержащее объект, с которым работает пользователь. Только для чтения.
Дополнительные сведения
Для большинства объектов в используемой модели объектов определено либо свойство Parent, либо свойство Collection, указывающее на родительский объект указанного объекта.
Свойство Collection обеспечивает доступ к свойствам, методам и элементам управления семейства, к которому принадлежит объект.
Свойство CommandBarEvents
Возвращает объект CommandBarEvents. Только для чтения.
Значения
Аргумент, передаваемый в свойство CommandBarEvents, имеет вид:
Аргумент
Описание
Должен представлять объект типа CommandBarControl.
Дополнительные сведения
Свойство CommandBarEvents используют для возвращения объекта-источника события, который запускает событие при нажатии кнопки на панели инструментов. Аргумент, передаваемый в свойство CommandBarEvents, должен представлять элемент управления панели инструментов, для которого генерируется событие нажатия кнопки.
Свойство Count
Возвращает значение типа Long, содержащее число элементов в семействе. Только для чтения.
Свойство CountOfDeclarationLines
Возвращает значение типа Long, содержащее число строк программы в разделе описаний программного модуля. Только для чтения.
Свойство CountOfLines
Возвращает значение типа Long, содержащее число строк программы в программном модуле. Только для чтения.
Свойство CountOfVisibleLines
Возвращает значение типа Long, содержащее число строк, которые являются видимыми в области программы. Только для чтения.
Свойство Description
Возвращает или задает строковое выражение, содержащее описание объекта. Для объекта VBProject это свойство доступно для чтения/записи; для объекта Reference свойство доступно только для чтения.
Дополнительные сведения
Для объекта VBProject свойство Description возвращает или задает стоку описания, связанную с активным проектом.
Для объекта Reference свойство Description возвращает краткое описание ссылки.
Свойство Designer
Возвращает объект, обеспечивающий доступ к средствам разработки компонента.
Дополнительные сведения
Если для объекта открыто окно конструктора, свойство Designer возвращает открытое окно конструктора; в противном случае создается новое окно конструктора. Окно конструктора является характеристикой определенных объектов VBComponent, при создании которых окно конструктора создается вместе с объектом. Компонент может иметь только одно окно конструктора, причем всегда одно и то же. Свойство Designer обеспечивает доступ к объекту, специфическому для компонента. В некоторых случаях, например, для стандартных модулей и модулей класса окно конструктора не создается, поскольку эти типы объектов VBComponent не поддерживают окно конструктора.
Если объект VBComponent не имеет окна конструктора, свойство Designer возвращает значение Nothing.
Свойство DesignerWindow
Возвращает объект Window, представляющий окно конструктора компонента.
Дополнительные сведения
Если компонент поддерживает окно конструктора, но не имеет открытого окна конструктора, то окно конструктора создается при обращении к свойству DesignerWindow, но при этом является невидимым. Чтобы сделать окно видимым, следует задать значение True для свойства Visible объекта Window.
Свойство GUID
Возвращает значение типа String, содержащее идентификатор класса объекта. Только для чтения.
Свойство HasOpenDesigner
Возвращает значение типа Boolean, указывающее, имеет или нет объект VBComponent открытое окно конструктора. Только для чтения.
Возвращаемые значения
Свойство HasOpenDesigner возвращает следующие значения:
Значение
Описание
True
Объект VBComponent имеет открытое окно конструктора.
False
Объект VBComponent не имеет открытого окна конструктора
Свойство height
Возвращает или задает значение типа Single, содержащее высоту окна в единицах твип. Чтение/запись.
Дополнительные сведения
Изменение значения свойства height связанного окна или закрепленного окна не имеет последствий, пока окно остается связанным или закрепленным.
Свойство HelpContextID
Возвращает или задает значение типа String, содержащее контекстный идентификатор раздела справки Microsoft Windows. Чтение/запись.
Свойство HelpFile
Возвращает или задает значение типа String, указывающее файл справки Microsoft Windows для проекта. Чтение/запись.
Свойство IndexedValue
Возвращает или задает значение компонента свойства, которое определяется индексированным списком или массивом.
Дополнительные сведения
Значение, возвращаемое или задаваемое свойством IndexedValue, представляет выражение, которое при оценке дает тип, принимаемый объектом. Для свойства, представляющего индексированный список или массив, необходимо использовать свойство IndexedValue вместо свойства Value. Индексированный список является числовым выражением, указывающим положение индекса.
Свойство IndexedValue принимает до 4 индексов. Число индексов, принимаемых свойством IndexedValue, возвращается в значении свойства NumIndices.
Свойство IndexedValue используется только в тех случаях, когда значение свойства NumIndices превышает нуль. Значения в индексированном списке задаются или возвращаются с помощью одного индекса.
Свойство IsBroken
Возвращает значение типа Boolean, указывающее, представляет ли объект Reference допустимую ссылку в реестре. Только для чтения.
Возвращаемые значения
Свойство IsBroken возвращает следующие значения:
Значение
Описание
True
Объект Reference более не представляет допустимую ссылку в реестре.
False
Объект Reference представляет допустимую ссылку в реестре.
Свойство Saved
Возвращает значение типа Boolean, указывающее, был ли объект изменен после его последнего сохранения. Чтение/запись.
Возвращаемые значения
Свойство Saved возвращает следующие значения:
Значение
Описание
True
Объект не был изменен после его последнего сохранения.
False
Объект был изменен после его последнего сохранения.
Дополнительные сведения
Метод SaveAs задает для свойства Saved значение True.
Примечание. Ели задать для свойства Saved значение False в программе, это свойство будет возвращать значение False, а объект будет отмечен как измененный после его последнего сохранения.
Свойство SelectedVBComponent
Возвращает выделенный компонент. Только для чтения.
Дополнительные сведения
Свойство SelectedVBComponent возвращает выделенный компонент в окно проекта. Если элемент, выделенный в окне проекта, не является компонентом, свойство SelectedVBComponent возвращает значение Nothing.