Я предлагаю вам хранить оба URL-адреса в переменных, как показано ниже.
Dim url1, url2 As String
url1 = "https://fulcrum/NewBuild/Record.aspx?ID=" & Range("B1").Value
url2 = "http://gcommswebmapgb/portal/"
Затем попробуйте передать переменные URL-адреса в .Navigate без круглых скобок, как показано ниже.
With ie
.Visible = True
.Navigate url1
.Navigate url2, CLng(2048)
Это исправит вашу синтаксическую ошибку, и URL будут открыты в 2 вкладках.
Модифицированный код:
Sub ie()
Dim ie As Object
Dim location
'Dim button
Dim url1, url2 As String
url1 = "https://fulcrum/NewBuild/Record.aspx?ID=" & Range("B1").Value
url2 = "http://gcommswebmapgb/portal/"
Set ie = CreateObject("InternetExplorer.Application")
With ie
.Visible = True
.Navigate url1
.Navigate url2, CLng(2048)
' .Top = 5
' .Left = 5
' .Height = 1300
' .Width = 1900
While ie.ReadyState <> 4
'Do Events
Wend
'Set location = .document.getElementById("__VIEWSTATE")
'Set button = .document.getElementById("btnContainer").Children(0)
'button.Click
While ie.ReadyState <> 4
DoEvents
Wend
End With
Set ie = Nothing
End Sub
Вывод:
Кроме того, вам необходимо проверить, что ваш код правильно ссылается на правильную вкладку для выполнения дополнительного кода. Обратите внимание, что вы не можете автоматизировать обе страницы одновременно. Вам нужно переключать вкладки, используя код VBA, чтобы выполнить код на указанной странице c.