Я действительно борюсь с этим, и я не могу заставить это работать. Я хочу многое сделать с помощью автоматизации через VBA, но я застрял на первом препятствии.
Вот мой код, он должен быть понятен;
Sub login()
Const Url$ = "(INTERNAL INTRANET WORK SITE I CANNOT SHARE)"
Dim UserName As String, Password As String
UserName = "TEST"
Password = "Password"
Dim ie As Object
Set ie = New InternetExplorerMedium
With ie
.navigate Url
.Visible = True
Application.Wait (Now + TimeValue("00:00:02"))
Dim oLogin As Object, oPassword As Object
Set oLogin = .document.getElementsByName("username")(0)
Set oPassword = .document.getElementsByName("password")(0)
oLogin.Value = UserName
oPassword.Value = Password
.document.forms(0).Submit
End With
End Sub
Вот HTML:
<TD background=/frontend/images/greenback.gif width=302><INPUT maxLength=32 value="" name=username> </TD>
<TD background=/frontend/images/greenback.gif width=302><INPUT maxLength=32 type=password value="" name=password> </TD>
<TD background=/frontend/images/greenback.gif width=302><INPUT type=submit value="Login now" name=submit> </TD>
Теоретически это должно работать правильно? Я получаю сообщение об ошибке:
Set oLogin = .document.getElementsByName("username")(0)
Сообщение об ошибке: Ошибка выполнения 462: компьютер удаленного сервера не существует или недоступен
ЛюбойИдеи? IE версии 11.737.17763.0 Excel 2016 Ссылочные элементы управления Microsoft Internet в VBA