Compartir a través de


Función CallByName

Ejecuta un método de un objeto, o bien establece o devuelve una propiedad de un objeto.

Sintaxis

CallByName (object, procname, calltype, [args()]_)

La sintaxis de la función CallByName tiene estos argumentos con nombre:

Parte Descripción
object Obligatorio: Variant (Objeto). Nombre del objeto en el que se ejecutará la función.
procname Obligatorio: Variant (String). Expresión de cadena que contiene el nombre de una propiedad o método del objeto.
calltype Requerido: constante. Constante de tipo vbCallType que representa el tipo de procedimiento al que se llama.
args() Opcional: Variant (Array).

Comentarios

La función CallByName se usa para obtener o establecer una propiedad, o para invocar un método en tiempo de ejecución mediante un nombre de cadena.

En el ejemplo siguiente, la primera línea usa CallByName para establecer la propiedad MousePointer de un cuadro de texto, la segunda línea obtiene el valor de la propiedad MousePointer y la tercera línea invoca el método Move para mover el cuadro de texto.

CallByName Text1, "MousePointer", vbLet, vbCrosshair
Result = CallByName (Text1, "MousePointer", vbGet)
CallByName Text1, "Move", vbMethod, 100, 100

Ejemplo:

En este ejemplo se usa la función CallByName para invocar el método Move de un botón Command .

En el ejemplo también se usa un formulario (Form1) con un botón (Command1) y una etiqueta (Label1). Cuando se carga el formulario, la propiedad Caption de la etiqueta se establece en "Move" y el nombre del método que se va a invocar. Si hace clic en el botón, la función CallByName invoca al método para cambiar la ubicación del botón.

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

Vea también

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.