IEのウィンドウタイトルが取得できません
ある繰返し処理の中の、スクリプト実行ノードの中に下記のコードを書いています。(ここから、ここまで)
シナリオの概要は、excelシートのC列に書かれた顧客コードを上から順番に読み込み、あるサイトで、顧客コードを検索キーにして検索し、titleタグの情報をmsgboxで画面に表示するものです。
最初のループでは、最初の顧客コードのtitleタグの情報を最後のmsgbox titleで表示できましたが、2番目のループ、3番目のループでも、相変わらず、最初の顧客コードのtitleタグの情報が表示されます。
下記のコードの先頭行でGetUMSWindowTitleで、毎回新しいtitleタグ情報を取りに行っているように見えるのですが、どうしてでしょうか?
コードの修正方法を教えてください。
------ここから
' 引数を解釈する
ieTitle = GetUMSWindowTitle(@ウィンドウ識別名@)
' 戻り値
Dim result
If isNull(ieTitle) Then
Err.Raise 1, "", "指定されたウィンドウが存在しません。"
WScript.Quit
End If
' 指定されたページのdocumentを取得する
Set document = Nothing
Set shell = CreateObject("Shell.Application")
For i = 0 To shell.Windows.Count - 1
Set window = shell.Windows(i)
title = Empty
On Error Resume Next
title = window.document.title
On Error Goto 0
If title <> Empty Then
If InStr(ieTitle, title) = 1 Then
Set document = window.document
Exit For
End If
End If
Next
If document Is Nothing Then
Err.Raise 1, "", "指定されたタイトルのページが開かれていません。"
WScript.Quit
End If
' document内の指定されたテキストを含むリンクオブジェクトを取得する
On Error Resume Next
Dim elements
Dim buf
Dim last_line
msgbox title
------ここまで