重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

InternetExplorerを参照設定し、
Sub aaa()
Dim objIE As InternetExplorer
objIE.
End Sub
とした後に、Navigateを入力すると、自動でnavigateにかわってしまいます。

一覧が表示される時は、大文字です。(画像をご覧ください)
なぜ小文字になってしまうのでしょうか?

参照設定は、HTMLオブジェクトライブラリにもチェックを入れてますが、
それが原因でしょうか?

「「Navigate」のNが小文字になって」の質問画像

A 回答 (1件)

こんにちは。



まず、
余り気にしなくても良いですよ。
IE操作に限らず、外部オブジェクト(クラスやライブラリ)を
扱っていれば、よく起こることです。
多少読み難くなる点を除けば特に問題はありません。
一般論としてスクリプトの多くは大文字小文字を区別しないものですから。
でもまぁ、それを見て不安になる人は他にもいるでしょうから、
まったく問題ない、とも言えないのですけどね。

再現するのは簡単で、
 開いているVBAProject内で.Navigateメソッド記述済だとして
 どこか空いている行に一時的に
  Dim navigate
 とタイプします(↑実際にはあり得ない記述です)。
 (VBEの戻るボタンなどで記述を元に戻します)
 → VBAProject内で既存の"Navigate"というキーワードすべてが
   "navigate"に置換されます。
原因は他にも色々とあってライブラリによっても影響が出難い場合もありますが、
多く経験するのは、Web上のサンプルコードをコピペしたりする時に、
サンプルコード側の記述に影響されて
VBAProject内のキーワードが置換されるようなケースです。
#原因といっても理屈としてどのようなプライオリティなのかは私も知りません

基本的にVBAProject単位で起きる現象なので
通常は参照設定には関係ないと思います。
 どこか空いている行に一時的に
  Dim Navigate
 とタイプします(↑実際にはあり得ない記述です)。
 (VBEの戻るボタンなどで記述を元に戻します)
これで元の"Navigate"に置換し直される筈ですが、
どうでしょう?

VBAの記述については大文字小文字区別するように心がけているつもりですが、
直すのを忘れて、つい掲示してしまうこともあります。
「コピペした時にユーザーさんのProjectの他の部分を書き換えてしまう」
ような記述だけは特に注意しているつもりなのですけれど、
やっちゃうんですよね、うっかり(汗)。

以上、答えになっているかわかりませんが、ご参考まで。
    • good
    • 0
この回答へのお礼

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

お礼日時:2013/05/18 20:28

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!