Функция CallByName
Выполняет метод объекта либо устанавливает или возвращает свойство объекта.
Синтаксис
CallByName (object, procname, calltype, [args()]_)
В синтаксисе функции CallByName используются следующие именованные аргументы:
Part | Описание |
---|---|
object | Обязательный аргумент: Variant (Object). Имя объекта, для которого выполняется функция. |
procname | Обязательный аргумент: Variant (String). Строковое выражение, содержащее имя свойства или метода объекта. |
calltype | Обязательный: константная. Константа типа vbCallType, представляющая тип вызываемой процедуры. |
args() | Необязательный элемент: Variant (Array). |
Замечания
Функция CallByName используется для получения или задания свойства или вызова метода во время выполнения с использованием имени строки.
В следующем примере первая строка использует CallByName для задания свойства MousePointer текстового поля, вторая строка получает значение свойства MousePointer , а третья строка вызывает метод Move для перемещения текстового поля.
CallByName Text1, "MousePointer", vbLet, vbCrosshair
Result = CallByName (Text1, "MousePointer", vbGet)
CallByName Text1, "Move", vbMethod, 100, 100
Пример
В этом примере функция CallByName используется для вызова метода Move кнопки Command .
В примере также используется форма (Form1
) с кнопкой (Command1
) и меткой (Label1
). При загрузке формы свойству Caption метки присваивается значение "Move" и имени вызываемого метода. При нажатии кнопки функция CallByName вызывает метод, чтобы изменить положение кнопки.
Option Explicit
Private Sub Form_Load()
Label1.Caption = "Move" ' Name of Move method.
End Sub
Private Sub Command1_Click()
If Command1.Left <> 0 Then
CallByName Command1, Label1.Caption, vbMethod, 0, 0
Else
CallByName Command1, Label1.Caption, vbMethod, 500, 500
End If
См. также
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.