1. ホーム
  2. vba

[解決済み] オプションの引数が与えられているかどうかをテストするにはどうしたらいいですか?

2023-06-08 20:52:06

質問

オプションの引数が指定されているかどうかをテストするにはどうしたらよいでしょうか。-- VB6 / VBAにおいて

Function func (Optional ByRef arg As Variant = Nothing)

    If arg Is Nothing Then   <----- run-time error 424 "object required"
        MsgBox "NOT SENT"
    End If

End Function 

どのように解決するのですか?

使用方法 IsMissing :

If IsMissing(arg) Then
    MsgBox "Parameter arg not passed"
End If

しかし、私の記憶が正しければ、これは引数にデフォルトを与えたときには動作しませんし、いずれにせよ、デフォルトの引数を使うことはむしろ冗長になってしまいます。