自分方位研究所

日々の活動記録

VBAでIE (Internet Explorer)を起動する。

昨日は、IEが起動しているか確認しました。きょうはIEを起動させてみます。

以下のコードを実行するとIEが新しく開きます。

Sub OpenIE()

Dim TGTpageURL As String    '表示したいURL
TGTpageURL = "https://hatenablog.com/"

Dim objIE As Object
Set objIE = CreateObject("InternetExplorer.Application")
objIE.Visible = True
objIE.Navigate TGTpageURL   '指定URLを開く

End Sub

このまま実行すると、新しくIEが開くのですが、

既にIEが開いているときにこのコードを実行すると、更にIEが起動し、タブが一つで、そのタブに、TGTpageURL で指定したURLのページが開きます。

IEが起動するときに、終了時のタブの状態を復元するようにしていれば、その状態で起動するわけですが、複数タブを開いている状態で一旦IEを終了させてから、上記コードを実行すると、IEが起動したとき、一番左側にあるタブにTGTpageURLが上書き表示されます。このときIEの「戻る」ボタンをクリックすれば、元のページに戻れるわけですが、どうせなら、新規のタブに表示してほしいものです。

また、起動したIEに、すでに TGTpageURLを表示したページが存在していたとしても、TGTpageURLが更に表示されます。もし、すでに表示されているTGTpageURLのページが左端のタブに存在していれば、同じURLが再度書き込まれることになります。

というわけで、IEを起動するときも、このコードに手を加えて、上記の問題を解決することにします。明日に続きます。