Devuelve un valor booleano que indica si se ha pasado unargumentoVariant opcional a un procedimiento.

Sintaxis

IsMissing( argname )

El argumento argname obligatorio contiene el nombre de un argumento de procedimiento variant opcional.

Comentarios

Use la función IsMissing para detectar si se han proporcionado argumentos Variant opcionales o no al llamar a un procedimiento. IsMissing devuelve True si no se ha pasado ningún valor para el argumento especificado; De lo contrario, devuelve Falso. Si IsMissing devuelve True para un argumento, el uso del argumento que falta en otro código puede causar un error definido por el usuario. Si se usa IsMissing en un argumento ParamArray , siempre devuelve False. Para detectar un ParamArray vacío, compruebe si el límite superior de la matriz es menor que su límite inferior.

Nota:  IsMissing no funciona en tipos de datos simples (como Integer o Double) porque, a diferencia de variants, no tienen una disposición para un bit de marca "que falta". Por este motivo, la sintaxis de los argumentos opcionales tecleados le permite especificar un valor predeterminado. Si omite el argumento cuando se llama al procedimiento, el argumento tendrá este valor predeterminado, como en el ejemplo siguiente:

Nota: Los ejemplos siguientes muestran el uso de esta función en un módulo de Visual Basic para Aplicaciones (VBA). Para obtener más información sobre cómo trabajar con VBA, seleccione referencia para desarrolladores en la lista desplegable situada junto a búsqueda y escriba uno o varios términos en el cuadro de búsqueda.

Sub MySub(Optional MyVar As String = "specialvalue")    If MyVar = "specialvalue" Then        ' MyVar was omitted.    Else    ...End Sub

En muchos casos, puede omitir la If MyVar prueba por completo haciendo que el valor predeterminado sea igual al valor que desea que contenga MyVar si el usuario lo omite de la llamada de función. Esto hace que el código sea más conciso y eficiente.

Ejemplo

En este ejemplo se usa la función IsMissing para comprobar si se ha pasado un argumento opcional a un procedimiento definido por el usuario. Tenga en cuenta que los argumentos Opcionales ahora pueden tener valores y tipos predeterminados distintos de Variant.

Dim ReturnValue' The following statements call the user-defined' function procedure.ReturnValue = ReturnTwice()    ' Returns Null.ReturnValue = ReturnTwice(2)    ' Returns 4.' Function procedure definition.Function ReturnTwice(Optional A)    If IsMissing(A) Then        ' If argument is missing, return a Null.        ReturnTwice = Null    Else        ' If argument is present, return twice the value.        ReturnTwice = A * 2    End IfEnd Function

¿Necesita más ayuda?

¿Quiere más opciones?

Explore las ventajas de las suscripciones, examine los cursos de aprendizaje, aprenda a proteger su dispositivo y mucho más.

Las comunidades le ayudan a formular y responder preguntas, enviar comentarios y leer a expertos con conocimientos extensos.