【VBA】IEのリンクを新しいタブで開く
VBAでIEを制御しリンク(アンカー)<a href="***">を新しいタブで開くようにしたいのですが可能でしょうか?
仮にグーグルのトップページ(http://www.google.co.jp/)の『検索オプション』(http://www.google.co.jp/advanced_search?hl=ja)を新しいタブで開くとします
実際に開きたいリンクのURLは固定ではないためURLの指定では開けませんが、飛びたいリンクの文言(『検索オプション』)は固定です
リンクに飛ぶ前に飛ぶ先のURLを取得する仕方か、Shift+Ctrl+クリックのようにリンクを新しいタブで開く方法を教えてください
一度普通にリンクに飛んでからURLを取得し、戻ってから新しいタブで開くぐらいしかできないのでしょうか?
Sub 新しいタブで開く()
Dim objIE As Object
Dim objShell
Dim URL As String
Set objShell = CreateObject("Shell.Application")
For n = objShell.Windows.Count To 1 Step -1
Set objIE = objShell.Windows(n - 1)
If Right(UCase(objIE.FullName), 12) = "IEXPLORE.EXE" Then
objIE.Navigate "http://www.google.co.jp/"
Exit For
End If
Next
Set objShell = Nothing
objIE.Visible = True
Do While objIE.Busy = True Or objIE.ReadyState <> 4
DoEvents
Loop
For Each Obj In objIE.Document.getElementsByTagName("a")
If Obj.innerText = "検索オプション" Then
Obj.Click
Do While objIE.Busy = True Or objIE.ReadyState <> 4
DoEvents
Loop
URL = objIE.Document.URL
objIE.GoBack
Do While objIE.Busy = True Or objIE.ReadyState <> 4
DoEvents
Loop
objIE.Navigate URL, CLng(&H800)
Exit For
End If
Next
End Sub
よろしくお願いいたします