선택적 Variant인수 에 전달되어 있는지 여부를 나타내는 부울 값을 절차.
구문
IsMissing(argname)
필요한 argname 인수에는 선택적 Variant 프로시저 인수의 이름이 포함되어 있습니다.
주의
IsMissing 함수를 사용하여 프로시저를 호출하는 데 선택적 Variant 인수가 제공되어 있는지 여부를 검색합니다. IsMissing은 지정된 인수에 대해 값이 전달되지 않은 경우 True를 반환합니다. 그렇지 않으면 False 를 반환합니다.IsMissing이 인수에 대해 True를 반환하는 경우 다른 코드에서 누락된 인수를 사용할 경우 사용자 정의 오류가 발생할 수 있습니다. IsMissing이ParamArray 인수에 사용되는 경우 항상 False 를 반환합니다. 빈 ParamArray를 검색하기 위해를 테스트하여 배열의 상한이 하위 바인딩보다 작은지 검사합니다.
참고: IsMissing은 Variants와달리 "누락된" 플래그 비트에 대한 프로비전이 아니기 때문에 간단한 데이터 형식(예: 정수 또는 Double)에서작동하지 않습니다. 이 때문에 입력된 선택적 인수에 대한 구문을 사용하면 기본값을 지정할 수 있습니다. 프로시저를 호출할 때 인수가 생략된 경우 인수는 아래 예제와 같은 이 기본값을 하게 됩니다.
참고: VBA(Visual Basic for Applications) 모듈에서 이 함수를 사용하는 경우를 예로 들어 보겠습니다. VBA 사용에 대해 자세히 알아보려면 검색 옆의 드롭다운 목록에서 개발자 참고를 선택하고 검색 상자에 검색어를 하나 이상 입력하세요.
Sub MySub(Optional MyVar As String = "specialvalue")
If MyVar = "specialvalue" Then
' MyVar was omitted.
Else
...
End Sub
대부분의 경우 사용자가 함수 호출에서 If MyVar 포함하려는 값과 동일한 기본값을 MyVar 테스트는 완전히 생략할 수 있습니다. 이렇게 하면 코드가 더 효율적이고 더 능률적입니다.
예제
이 예제에서는 IsMissing 함수를 사용하여 선택적 인수가 사용자 정의 프로시저에 전달된지 확인할 수 있습니다. 이제 선택적 인수에 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 If
End Function