Лучше избегать использования .Select
/ .Activate
. Попробуйте код ниже:
Sub Selstart()
Dim driver As ChromeDriver
Set driver = New ChromeDriver
Dim dumpWS As Worksheet
Dim linkWS As Worksheet
Set dumpWS = Worksheets("dump")
Set linkWS = Worksheets("Hyperlinks")
driver.Get ("abc.com")
Dim a, b As String
a = "getlam"
b = "strak"
driver.FindElementByXPath(".//*[@id='loginForm']/div[1]/div[1]/input").SendKeys a
driver.FindElementByXPath(".//*[@id='loginForm']/div[1]/div[2]/input").SendKeys b
driver.FindElementByXPath(".//*[@id='Submit_button']").Click
Dim url0 As String
url0 = linkWS.Range("F5").Value
driver.Get url0
'open chrome and select page'
Application.Wait (Now() + TimeValue("00:00:01"))
SendKeys "^{a}"
Application.Wait (Now() + TimeValue("00:00:01"))
SendKeys "^{c}"
Application.Wait (Now() + TimeValue("00:00:01"))
dumpWS.UsedRange.ClearContents
'clear range contents'
dumpWS.Range("A1").Paste
'paste the content'
driver.Get url0
Application.Wait (Now() + TimeValue("00:00:02"))
driver.FindElementByXPath(".//a[normalize-space()='Next']").Click
'Click on Next button'
Application.Wait (Now() + TimeValue("00:00:01"))
SendKeys "^{a}"
Application.Wait (Now() + TimeValue("00:00:01"))
SendKeys "^{c}"
Application.Wait (Now() + TimeValue("00:00:01"))
dumpWS.Range("A130").Paste
driver.Get url0
Application.Wait (Now() + TimeValue("00:00:02"))
driver.FindElementByXPath(".//a[normalize-space()='Next']").Click
Application.Wait (Now() + TimeValue("00:00:02"))
driver.FindElementByXPath(".//a[normalize-space()='Next']").Click
'Click on Next button*2'
Application.Wait (Now() + TimeValue("00:00:01"))
SendKeys "^{a}"
Application.Wait (Now() + TimeValue("00:00:01"))
SendKeys "^{c}"
Application.Wait (Now() + TimeValue("00:00:01"))
dumpWS.Range("A260").Paste
End Sub
Хотя я не думаю, что строка .Select
выдает ошибку. Когда вы нажимаете «Отладка», вы уверены, что эта строка выделена? Я думаю Element not Found
это проблема с одним из XPaths ...