Comprender la sintaxis de Visual Basic

Microsoft VBA

Comprender la sintaxis de Visual Basic

   

En la sección de Ayuda de Visual Basic correspondiente a un método, instrucción o procedimiento Function la sintaxis muestra todos los elementos necesarios para utilizar correctamente ese método, instrucción o función. Los ejemplos siguientes explican como deben interpretarse los elementos sintácticos más comunes.

Sintaxis del método Activate

objeto.Activate

En la sintaxis del método Activate, la palabra "objeto" en cursiva es la posición reservada para la información que introduce el usuario — en este caso, código que devuelve un objeto. Las palabras que se muestran en negrita deben escribirse exactamente tal y como se indica. Por ejemplo, el siguiente procedimiento activa la segunda ventana en el documento activo.

Sub Activar()
    Windows(2).Activate
End Sub

Sintaxis de la función MsgBox

MsgBox(texto[, botones] [, título] [, archivoayuda, contexto])

En la sintaxis de la función MsgBox, las palabras en cursiva y negrita son argumentos con nombre de la función. Los argumentos que aparecen entre corchetes son opcionales. (No escriba los corchetes en el código de Visual Basic). En el caso de la función MsgBox, el único argumento que se debe incluir es el texto de la pregunta.

Los argumentos para funciones y métodos se pueden especificar en el código mediante su posición o por su nombre. Para especificar argumentos mediante su posición, siga el orden que se indica en la sintaxis, separando los argumentos con una coma, por ejemplo:

MsgBox "¡Su respuesta es correcta!",0,"Cuadro de Respuesta"

Para especificar un argumento mediante su nombre basta con usar el nombre del argumento seguido de dos puntos y un signo igual (:=) y el valor del argumento. Los argumentos con nombre se pueden especificar en cualquier orden, por ejemplo:

MsgBox Title:="Cuadro de Respuesta", Prompt:="¡Su respuesta es correcta!"

La sintaxis de las funciones y algunos métodos muestran los argumentos entre paréntesis. Estas funciones y métodos devuelven valores, por eso deben encerrarse los argumentos entre paréntesis al asignar un valor a una variable. Si se ignora el valor de retorno o si no se pasan argumentos en forma alguna, no deben incluirse los paréntesis. Los métodos que no devuelven valores no necesitan que sus argumentos aparezcan encerrados entre paréntesis. Estas normas son aplicables tanto si se usan argumentos posicionales o nominativos.

En el siguiente ejemplo, el valor que devuelve la función MsgBox es un número que indica el botón seleccionado almacenado en la variable miVar. Dado que se utiliza el valor que devuelve la función, es preciso utilizar paréntesis. Otro cuadro de mensaje presenta entonces en pantalla el valor de la variable.

Sub Pregunta()
    miVar = MsgBox(Prompt:="Me gusta mi trabajo.", _
        Title:="Cuadro de respuesta", Buttons:="4")
    MsgBox miVar
End Sub

Sintaxis de la instrucción Option

Option Compare {Binary | Text | Database}

En la sintaxis de la instrucción Option Compare, las llaves y la línea vertical indican una elección obligatoria entre tres opciones. (No escriba las llaves en la instrucción de Visual Basic). Por ejemplo, la siguiente instrucción especifica que dentro del módulo, las cadenas se comparan en un criterio de ordenación que no depende del mayúsculas o minúsculas.

Option Compare Text

Sintaxis de la instrucción Dim

Dim nombrevariable[([subscriptos])] [As tipo] [, nombrevariable[([subscriptos])] [As tipo]] . . .

En la sintaxis de la instrucción Dim, la palabra Dim es una palabra clave exigida. El único elemento necesario es nombrevariable (el nombre de la variable). Por ejemplo, la siguiente instrucción crea tres variables: miVar, siguienteVar y terceraVar. Estas variables se declaran automáticamente como Variant.

Dim miVar, siguienteVar, terceraVar

El siguiente ejemplo declara una variable como String. Al incluir un tipo de datos se ahorra memoria y se pueden evitar errores en el código.

Dim miRespuesta As String

Para declarar varias variables en una instrucción, debe incluirse el tipo de datos para cada variable. Las variables declaradas sin un tipo de datos se declaran automáticamente como Variant.

Dim x As Integer, y As Integer, z As Integer

En la siguiente instrucción, a x e y se les asigna el tipo de datos Variant. Sólo a z se le asigna el tipo de datos Integer.

Dim x, y, z As Integer

Si se declara una variable matriz, deben incluirse los paréntesis. Los subscriptos son opcionales. La siguiente instrucción define las dimensiones de una matriz dinámica, miMatriz.

Dim miMatriz()