更新日:、 作成日:
VBA エラー 5 プロシージャの呼び出し、または引数が不正です。
はじめに
Excel VBA マクロのエラー 5 「プロシージャの呼び出し、または引数が不正です。」の対処法を紹介します。
関数の引数に、範囲外の値を指定したときによく発生します。
エラーの基本的な対処法は、エラー箇所の特定とその原因となったコードをデバッグします。
デバッグについては「デバッグの仕方」をご覧ください。
エラー処理については「エラー処理をする」をご覧ください。
解決する
関数によって、引数に指定できる値の範囲が決まっているものがあります。
「Left 関数」なら、引数に 0 以上の数値を指定する必要があります。ここに負の値を指定すると発生します。
Dim s As String
s = Left("ABC", -1) ' エラー
s = Left("ABC", 1) ' OK
関数のヘルプにも値の範囲が記載されていないことが多いです。そのため適切な値を 1 つずつ確認していくと原因がわかります。