Buscar..


Introducción a los procedimientos.

Un Sub es un procedimiento que realiza una tarea específica pero no devuelve un valor específico.

Sub ProcedureName ([argument_list])
    [statements]
End Sub

Si no se especifica ningún modificador de acceso, un procedimiento es Public por defecto.

Una Function es un procedimiento que recibe datos y devuelve un valor, idealmente sin efectos secundarios globales o de alcance de módulo.

Function ProcedureName ([argument_list]) [As ReturnType]
    [statements]
End Function

Una Property es un procedimiento que encapsula los datos del módulo. Una propiedad puede tener hasta 3 accesores: Get para devolver un valor o una referencia de objeto, Let asignar un valor y / o Set para asignar una referencia de objeto.

Property Get|Let|Set PropertyName([argument_list]) [As ReturnType]
    [statements]
End Property

Las propiedades generalmente se usan en módulos de clase (aunque también se permiten en módulos estándar), exponiendo el acceso a datos que de otra manera no son accesibles para el código que llama. Una propiedad que solo expone un acceso Get es "solo lectura"; una propiedad que solo expondría un acceso Let y / o Set es "solo escritura". Las propiedades de solo escritura no se consideran una buena práctica de programación: si el código del cliente puede escribir un valor, debería poder leerlo nuevamente. Considere implementar un procedimiento Sub en lugar de hacer una propiedad de solo escritura.

Devolviendo un valor

Un procedimiento de Property Get Function o Property Get puede (¡y debería!) Devolver un valor a su interlocutor. Esto se hace asignando el identificador del procedimiento:

Property Get Foo() As Integer
    Foo = 42
End Property

Funcionar con ejemplos

Como se indicó anteriormente, las funciones son procedimientos más pequeños que contienen piezas pequeñas de código que pueden ser repetitivas dentro de un procedimiento.

Las funciones se utilizan para reducir la redundancia en el código.

Similar a un procedimiento, una función puede ser declarada con o sin una lista de argumentos.

La función se declara como un tipo de retorno, ya que todas las funciones devuelven un valor. El nombre y la variable de retorno de una función son los mismos.

  1. Función con parámetro:

     Function check_even(i as integer) as boolean
     if (i mod  2) = 0 then
     check_even = True
     else
     check_even=False
     end if
     end Function
    
  2. Función sin parámetro:

     Function greet() as String
     greet= "Hello Coder!"
     end Function
    

La función puede ser llamada de varias maneras dentro de una función. Dado que una función declarada con un tipo de retorno es básicamente una variable. Se usa similar a una variable.

Llamadas funcionales:

    call greet() 'Similar to a Procedural call just allows the Procedure to use the
                 'variable greet 
    string_1=greet() 'The Return value of the function is used for variable
                     'assignment

Además, la función también se puede utilizar como condiciones para y otras declaraciones condicionales.

      for i = 1 to 10
      if check_even(i) then
      msgbox i & " is Even"
      else
      msgbox i & " is Odd"
      end if
      next i

Además, más funciones pueden tener modificadores como By ref y By val para sus argumentos.



Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow