「エクセル2010vba 名前付き引数が見つからない」
「excel vba 名前つき引数が見つかりません 理由」
という検索で、このサイト・インストラクターのネタ帳へのアクセスが時折あります。
Excelマクロを実行しようとしたときや、VBA Projectのコンパイルを行ったときに
「コンパイルエラー:名前付き引数が見つかりません。」
という、上図のようなメッセージが表示されたので、その原因・理由・対処方法を探している方による検索です。
名前付き引数が見つかりませんエラーが表示される理由
「名前付き引数が見つかりません」というコンパイルエラーが発生する理由は、以下のとおりです。引数の名前を間違えて入力している
例えば、以下のコードを実行すると、
「ActiveCell.Copy Destination:=Worksheets(1).Range("A1")」
アクティブセルを、一番左のシートのA1セルにコピーすることができます。
このコードを、
「ActiveCell.Copy Destinationn:=Worksheets(1).Range("A1")」
のように、名前付き引数・Destinationのスペルをタイプミスしてしまった状態で、VBA Projectのコンパイルを行ったようなときに、名前付き引数が見つかりませんエラーが発生します。
ですから、名前付き引数が見つかりませんエラーが表示されたときには、名前付き引数のスペルが間違っているはずなので、間違っている引数の名前・「:=」の左側を修正しましょう。
どうやって正しい名前付き引数をみつけるか
正しい引数の名前を調べる方法は3つあります。
- 自動クイックヒント
- ヘルプ
- オブジェクトブラウザー
コードの入力をしている途中で、自動クイックヒントが表示される場合、このヒントを参考にするのが簡単でしょう。
情報がもっとも充実しているのは、勿論ヘルプです。
ヘルプの問題点は、間違っていることがあることです。
ヘルプだって人が作っているものですから、どうしても間違いがあります。
基本的には信じていいものですが、絶対に間違いがないと思い込んではいけません。
私が一番信頼しているのは、オブジェクトブラウザーです。
オブジェクトブラウザーの詳細ペインにも、引数の名前が表示されています。
オブジェクトブラウザーの場合、ヘルプとは違って間違っているということはあり得ませんので、私はオブジェクトブラウザーをもっとも使っています。
Home » エクセルマクロ・Excel VBAの使い方 » 名前付き引数が見つかりませんエラーが表示される