0

Я хочу выбрать выпадающий элемент через макрос Excel. Я не могу ссылаться на выпадающий элемент по имени тега «ddWareHouse». Я получаю ошибку.Выберите выпадающий элемент vba. Не удается получить доступ к iframe.

Я думаю, что я действительно близок с прилагаемым кодом. Но я на этот раз получаю ошибку Run-time Error (70). Разрешение отклонено

Sub test3() 
Dim IE As New InternetExplorer 
Dim html As HTMLDocument 
Dim test As HTMLIFrame 
Dim BaseURL As String 
BaseURL="https://some_adress_which_I_cannot_display_because_because.aspx" 
Set IE = New InternetExplorer 
IE.Visible = True 
IE.navigate BaseURL 
Do While IE.readyState <> READYSTATE_COMPLETE 
Application.StatusBar = "Webpage is loading please wait" 
DoEvents 
Loop 
Set html = IE.document 
Set test = html.getElementById("alexIFRAME") 
IE.Navigate2 test.src 
test.document.getElementById("ddWarehouse").Value = "Lund" 
'HERE I GET PERMISSION DENIED ERROR 
End Sub 

Не могли бы вы помочь мне понять, как получить доступ к выпадающему меню «ddWarehouse». Я прикреплял файл .jpg с html-кодом и еще один .jpg, показывающий, как выглядит выпадающее меню. Заранее благодарю вас за поддержку и руководство!

Dropdown menu

HTML Code

ответ

0

Я не уверен, если .document как вы можете обратиться к ней. Что происходит, когда вы пытаетесь что-то подобное на этой линии, html.getElementById('alexIFRAME').contentWindow.document.getElementById('ddWarehouse').Value = "Lund"

или этот элемент, возможно, потребуется доступ к другому, html.getElementById('alexIFRAME').contentWindow.document.getElementById('ddWarehouse').FindByValue("Lund").Selected = true

+0

Ваше первое решение решило проблему. Мне просто пришлось сменить «Lund» на «LUN», потому что в html-коде он указан следующим образом: