Compartir a través de


Procedimientos secundarios (Visual Basic)

Un Sub procedimiento es una serie de instrucciones de Visual Basic incluidas en las instrucciones Sub y End Sub . El Sub procedimiento realiza una tarea y, a continuación, devuelve el control al código de llamada, pero no devuelve un valor al código de llamada.

Cada vez que se llama al procedimiento, se ejecutan sus instrucciones, empezando por la primera instrucción ejecutable después de la Sub instrucción y finalizando con la primera End Subinstrucción , Exit Subo Return encontrada.

Puede definir un Sub procedimiento en módulos, clases y estructuras. De forma predeterminada, es Public, lo que significa que puede llamarlo desde cualquier lugar de la aplicación que tenga acceso al módulo, clase o estructura en el que la definió. El término método describe un Sub procedimiento o Function al que se tiene acceso desde fuera de su módulo de definición, clase o estructura. Para obtener más información, vea procedimientos de .

Un Sub procedimiento puede tomar argumentos, como constantes, variables o expresiones, que se le pasan mediante el código que realiza la llamada.

Sintaxis de declaración

La sintaxis para declarar un Sub procedimiento es la siguiente:

[modifiers] Sub SubName[(parameterList)]
    ' Statements of the Sub procedure.
End Sub

modifiers puede especificar el nivel de acceso e información sobre la sobrecarga, la invalidación, el uso compartido y el sombreado. Para obtener más información, vea Sub Statement.

Declaración de parámetros

Se declara cada parámetro de procedimiento de forma similar a cómo se declara una variable, especificando el nombre del parámetro y el tipo de datos. También puede especificar el mecanismo de paso y si el parámetro es opcional o una matriz de parámetros.

La sintaxis de cada parámetro de la lista de parámetros es la siguiente:

[Optional] [ByVal | ByRef] [ParamArray] parameterName As DataType

Si el parámetro es opcional, también debe proporcionar un valor predeterminado como parte de su declaración. La sintaxis para especificar un valor predeterminado es la siguiente:

Optional [ByVal | ByRef]  parameterName As DataType = defaultValue

Parámetros como variables locales

Cuando el control pasa al procedimiento, cada parámetro se trata como una variable local. Esto significa que su duración es la misma que la del procedimiento y su ámbito es todo el procedimiento.

Sintaxis de llamada

Invocas explícitamente un Sub procedimiento mediante una instrucción de llamada independiente. No se le puede llamar mediante su nombre en una expresión. Debe proporcionar valores para todos los argumentos que no son opcionales y debe incluir la lista de argumentos entre paréntesis. Si no se proporciona ningún argumento, puede omitir opcionalmente los paréntesis. El uso de la Call palabra clave es opcional, pero no se recomienda.

La sintaxis de una llamada a un Sub procedimiento es la siguiente:

[Call] SubName[(argumentlist)]

Puede llamar a un Sub método desde fuera de la clase que la define. En primer lugar, debe usar la New palabra clave para crear una instancia de la clase o llamar a un método que devuelva una instancia de la clase . Para obtener más información, vea New Operator( Operador nuevo). A continuación, puede usar la sintaxis siguiente para llamar al Sub método en el objeto de instancia:

object.MethodName[(argumentList)]

Ilustración de la declaración y la llamada

El siguiente Sub procedimiento indica al operador de equipo qué tarea está a punto de realizar la aplicación y también muestra una marca de tiempo. En lugar de duplicar este código al principio de cada tarea, la aplicación solo llama tellOperator desde varias ubicaciones. Cada llamada pasa una cadena de texto como argumento task, que identifica la tarea que se está iniciando.

Sub tellOperator(ByVal task As String)
    Dim stamp As Date
    stamp = TimeOfDay()
    MsgBox("Starting " & task & " at " & CStr(stamp))
End Sub

En el ejemplo siguiente se muestra una llamada típica a tellOperator.

tellOperator("file update")

Consulte también