• ベストアンサー

「Navigate」のNが小文字になってしまう

InternetExplorerを参照設定し、 Sub aaa() Dim objIE As InternetExplorer objIE. End Sub とした後に、Navigateを入力すると、自動でnavigateにかわってしまいます。 一覧が表示される時は、大文字です。(画像をご覧ください) なぜ小文字になってしまうのでしょうか? 参照設定は、HTMLオブジェクトライブラリにもチェックを入れてますが、 それが原因でしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • cj_mover
  • ベストアンサー率76% (292/381)
回答No.1

こんにちは。 まず、 余り気にしなくても良いですよ。 IE操作に限らず、外部オブジェクト(クラスやライブラリ)を 扱っていれば、よく起こることです。 多少読み難くなる点を除けば特に問題はありません。 一般論としてスクリプトの多くは大文字小文字を区別しないものですから。 でもまぁ、それを見て不安になる人は他にもいるでしょうから、 まったく問題ない、とも言えないのですけどね。 再現するのは簡単で、  開いているVBAProject内で.Navigateメソッド記述済だとして  どこか空いている行に一時的に   Dim navigate  とタイプします(↑実際にはあり得ない記述です)。  (VBEの戻るボタンなどで記述を元に戻します)  → VBAProject内で既存の"Navigate"というキーワードすべてが    "navigate"に置換されます。 原因は他にも色々とあってライブラリによっても影響が出難い場合もありますが、 多く経験するのは、Web上のサンプルコードをコピペしたりする時に、 サンプルコード側の記述に影響されて VBAProject内のキーワードが置換されるようなケースです。 #原因といっても理屈としてどのようなプライオリティなのかは私も知りません 基本的にVBAProject単位で起きる現象なので 通常は参照設定には関係ないと思います。  どこか空いている行に一時的に   Dim Navigate  とタイプします(↑実際にはあり得ない記述です)。  (VBEの戻るボタンなどで記述を元に戻します) これで元の"Navigate"に置換し直される筈ですが、 どうでしょう? VBAの記述については大文字小文字区別するように心がけているつもりですが、 直すのを忘れて、つい掲示してしまうこともあります。 「コピペした時にユーザーさんのProjectの他の部分を書き換えてしまう」 ような記述だけは特に注意しているつもりなのですけれど、 やっちゃうんですよね、うっかり(汗)。 以上、答えになっているかわかりませんが、ご参考まで。

uoxldkbjnyl
質問者

お礼

ありがとうございました。

関連するQ&A