Visual Basic Scripting Edition  

Instrucción Sub

Declara el nombre, argumentos y código que forman el cuerpo de un procedimiento Sub.

[Public [Default] | Private] Sub nombre [(listaArgumentos)] 
   [instrucciones]
   [Exit Sub]
   [instrucciones]
End Sub

Argumentos

Public
Indica que el procedimiento Sub es accesible para todos los otros procedimientos de todas las secuencias de comandos.
Default
Utilizado sólo con la palabra clave Public en un bloque Class para indicar que el procedimiento Sub es el método predeterminado para la clase. Se produce un error si se especifica más de un error Default en una clase.
Private
Indica que el procedimiento Sub es accesible sólo para otros procedimientos de la secuencia de comandos donde se ha declarado.
nombre
Nombre de Sub. Sigue las convenciones de nomenclatura estándar de las variables.
listaArgumentos
Lista de variables que representan los argumentos que se pasan al procedimiento Sub cuando se le llama. Las comas separan las variables múltiples.
instrucciones
Cualquier grupo de instrucciones que se van a ejecutar dentro del cuerpo del procedimiento Sub.

El argumento listaArgumentos tiene la siguiente sintaxis:

[ByVal | ByRef] nombreVariable[( )]

Argumentos

ByVal
Indica que el argumento se ha pasado por valor.
ByRef
Indica que el argumento se ha pasado por referencia.
nombreVariable
Nombre de la variable que representa el argumento. Sigue las convenciones de nomenclatura estándar de las variables.

Comentarios

Si no se especifica explícitamente con Public o Private, los procedimientos Sub son públicos de manera predeterminada, es decir, son visibles para todos los otros procedimientos de su secuencia de comandos. El valor de las variables locales en el procedimiento Sub no se conserva entre llamadas al procedimiento.

No puede definir un procedimiento Sub dentro de cualquier otro procedimiento (p. ej. Function o Property Get).

La instrucción Exit Sub provoca una salida inmediata de un procedimiento Sub. La ejecución del programa continúa con la instrucción que sigue a la que llamó al procedimiento Sub. Puede aparecer cualquier número de instrucciones Exit Sub en cualquier lugar de un procedimiento Sub.

Al igual que un procedimiento Function, Sub es un procedimiento separado que puede aceptar argumentos, ejecutar una serie de instrucciones y cambiar el valor de sus argumentos. Sin embargo, a diferencia de un procedimiento Function, que devuelve un valor, un procedimiento Sub no se puede utilizar en una expresión.

Se llama a un procedimiento Sub mediante su nombre seguido de la lista de argumentos. Remítase a la instrucción Call para obtener información específica acerca de cómo llamar a un procedimiento Sub.

Precaución   Los procedimientos Sub pueden ser recursivos, es decir, pueden llamarse a sí mismos para realizar una tarea concreta. Sin embargo, la recursividad puede dar lugar a un desbordamiento de pila.

Las variables utilizadas en los procedimientos Sub pertenecen a dos categorías: aquellas que se declaran explícitamente dentro del procedimiento y aquellas que no. Las variables que se declaran explícitamente dentro de un procedimiento (con Dim o su equivalente) son siempre locales al procedimiento. Las variables que se utilizan pero no se declaran explícitamente dentro de un procedimiento son también locales a no ser que se declaren explícitamente en algún nivel superior fuera del procedimiento.

Precaución   Un procedimiento puede utilizar una variable que no se declare explícitamente en el procedimiento, pero puede producirse un conflicto de nomenclatura si cualquiera de los elementos que ha definido tiene el mismo nombre en el nivel de secuencia de comandos. Si el procedimiento hace referencia a una variable que no está declarada y que tiene el mismo nombre que otro procedimiento, constante o variable, se asume que su procedimiento hace referencia a dicho nombre del nivel de secuencia de comandos. Para evitar este tipo de conflicto, utilice una instrucción Option Explicit con la que se fuerce la declaración explícita de variables.

Requisitos

Versión 1

Consulte también

Instrucción Call | Instrucción Dim | Instrucción Exit | Instrucción Function

Ayuda de Javascript y Vbscript para Javascripts.astalaweb.com.