VBA. IE制御 開いているIEブラウザの数を数える IE操作
VBA. IE制御 開いているIEブラウザの数を数える IE操作
Shell.windowsでカウントされているウィンドウはなんだろう??
For Each objWindow In objShell.Windows
Debug.Print TypeName(objWindow.document)
Next
Debug.printに表示された結果は・・・
HTMLDocument
HTMLDocument
HTMLDocument
HTMLDocument
IShellFolderViewDual2
IShellFolderViewDual2 ってなにぃい??![]()
IEじゃないだろうものがカウントされている。。どうりで数が合わないはずだわーーー。
IShellFolderViewDual2 これは、どうやら エクスプローラーのようよ。
だったら、IEだけを数えるようにせねば・・・
というわけで、
For Each objWindow In objShell.Windows
If TypeName(objWindow.document) = "HTMLDocument" Then
OpenCount = OpenCount + 1
End If
Next
このようにしたら、開いているIEだけをカウントしてくれるようになりました!
わーーい ヾ(✿❛◡❛ฺฺ)ノ
ワード・エクセル・パワーポイント・アクセスを動画で楽々マスター!動画パソコン教室!【楽ぱそDVD】
VBA IE制御 URLを指定して新しいタブで開いてIDとパスワードを入力してログインする2
VBA IE制御 URLを指定して新しいタブで開いてIDとパスワードを入力してログインする の 記事 のなぞ
謎はIEのウィンドウのカウントが実際に開いているよりも 1 多いんですよね。
何を持って・・・ 1 多いのでしょう?
↓のコードで
OpenCount = 0
For Each objWindow In objShell.Windows
OpenCount= OpenCount+ 1
Next
shellアプリケーションの windows.count プロパティは、先頭の要素が0なので(← 要するに 1からじゃなくて、0(ゼロ)から始まるので、カウントした結果が、実際よりも 1 多くなるというわけです。
なので、windows.countの結果から1引いたりたしたり。。するとうまくいくのかと思いきや・・・
ちがうよーーー!!
何が違うかって、開いているIEのウィンドウの数が実際よりも多いよぅ!!
んんん? というわけで調べてみました。
アメブロにi2iアクセス解析を設置してみる
アメブロにi2iアクセス解析を設置してみよ~!
VBAには関係ないですけどね、他の人のブログを見ていると設置した方がよさそうなので設置してみました。
簡単に設置方法を説明しますね^^