Garth
A veces necesitamos un procedimiento que pueda aceptar un número variable de argumentos en varios momentos durante el programa (significa que el procedimiento a veces se llama pasando un argumento y en algún momento posterior se puede llamar al mismo procedimiento pasando dos argumentos, etc.).
En este caso usamos la palabra clave ParamArray en el encabezado de definición del procedimiento que requiere la variable número de argumentos en varios momentos.
Ponemos esta palabra clave en la lista de parámetros que indica que este procedimiento recibirá un número variable de argumentos.
La palabra clave ParamArray está precedida por la declaración de la matriz Variant en la lista de parámetros de ese procedimiento.
La matriz de tipo de variante se utiliza para permitir al usuario pasar los argumentos de cualquier tipo.
La sintaxis de usar esta palabra clave ParamArray en la definición del procedimiento se da como:
Private sub myfun (ParamArray x () como variante)
Dim y como entero
Para y = LBound (x) to UBound (x)
Print x (y)
Next
End sub
Donde 'myfun' es un procedimiento que usa ParamArray. Este procedimiento se puede llamar pasando varios números de argumentos como:
Llamar a myfun (1)
Llamar a myfun (1, 2)
Llamar a myfun (1, 2, 3)
También podemos pasar los diferentes número de argumentos, así como los diferentes tipos de argumentos como:
Call myfun (1, "fun", 5.67)
La llamada anterior pasa los tres tipos diferentes de argumentos.