VBAでIEで開いたダイアログのオブジェクトの操作
VBAでIE(Edge)上のWebページのエディットボックスやボタンを操作するには、
ie(COMオブジェクト)を取得して、
For Each obj In ie.document.getElementsByTagName("input")
If obj.ID = "txtDenpyoNo" Then
obj.Value = d_no
Exit For
End If
Next
For Each obj In ie.document.getElementsByTagName("input")
If obj.ID = "btnSearch" Then
obj.Click
Exit For
End If
Next
というような感じで、
エディットボックスに値を入れたり取得したり
ボタンをクリックしたりする仕方は分かりましたが、
サイト上のボタンをクリックすると、
別のウインドウやダイアログが表示されることがあります。
このような場合、HTMLコードがないため、
上記の方法では記述することができません。
新しいウインドウやダイアログのタイトルから、
IDは取得することはできましたが、この取得したIDで、
ウインドウやダイアログをアクティブにするには、
どのように記述すればよいのでしょうか。
また、ウインドウやダイアログ上のオブジェクトの
指定の仕方がよく分からないのですが、
ウインドウやダイアログ上のオブジェクトを操作するには、
どのように記述をすればよいのでしょうか。
よろしくお願いします。(Windows10,IE,Edge)
お礼
ご教示頂きました方法のうち、簡単にできる内部からウィンドウを閉じる方法を採り旨く行きました。 なお、添付の画像は不鮮明ですみませんでした。 それは作成中のアプリから使用するのではなく、通常の使用においても表示されるダイアログです。タイルが「Windows Internet Explorer」、テキストは「ウィンドウは、表示中のWebページにより閉じられようとしています。このウィンドウを閉じますか?」で「はい(Y)」と「いいえ(N)」の2個のボタンを持つよく見かけるダイアログでした。 早速回答頂き大変助かりました。ありがとうございました。