まずは私の回答にちょっとミスがありました。
タグ名で要素の配列を得るメソッドはgetElementsByTagName()でした。要素の配列を得るんですから複数形じゃないと。申し訳ない。
さてサンプルを読んでみて、いろいろ疑問が。
Set colSh = CreateObject("Shell.Application")
Set apps = colSh.Windows()
はIEやエクスプローラーの配列を取得するメソッドっぽいですね。
apps.item(index)がindex番目のアプリケーション(IEかエクスプローラ)を返すメソッドっぽい。
だけどサンプルコードは目的のIEかどうか特にチェックしてないような。
IEかエクスプローラを区別するにはnameメソッドが使えますかね。
IEだとわかったら、次は目的のページを表示してるIEかどうかを何かを方法で判定しないといけない。
IEならapp.Document.title()が使えるかも。
LotusScriptは苦手なので意味がある程度伝わる擬似コードで書いてみます。
Set colSh = CreateObject("Shell.Application")
Set apps = colSh.Windows() # アプリの配列
Forall app In colSh.Windows
if (app is not Nothing) &&u (app.name == "Internet Explorer") then
if (app.document.title == "目的のタイトル") then
set tags = app.Document.body.getElementsByName("input")
tags.item(3).value = "hogehoge" # 3番目のinputタグに書き込む場合
end if
end if
End Forall
しかし、こんな方法ですでに開いてるIEにアクセスできちゃうんだぁ。
IEが機密情報ばりばりの危ないページを開いてたときに、Notesのボタンを押すとIEから情報が漏れそう。
技術的にはできるかもしれないけど、あまりやっちゃいけないことのような気もします。
/Yac