Вам просто нужно использовать селектор css attribute = value , чтобы выбрать правильный год.Следующее включает проверку того, был ли он уже выбран.
Здесь вы можете увидеть родительский select
идентификатор и дочерний option
тег value
атрибуты:
This:
.querySelector("#ContentPlaceHolder1_Fecha_ddAnio [selected]").Value
возвращает правильно выбранный год, сначала найдя родительский элемент select
по id #ContentPlaceHolder1_Fecha_ddAnio
, затемиспользуя потомок комбинатора " "
и \[\]
селектора атрибутов, чтобы найти выбранную опцию в.
This:
.querySelector("[value='" & CStr(año) & "']").Selected = True
конструкцийтребуемый атрибут = селектор значения, например
[value='2018']
VBA:
Option Explicit
'VBE > Tools > References: Microsoft Internet Controls
Public Sub GetData()
Dim ie As Object
Set ie = CreateObject("InternetExplorer.Application")
With ie
.Visible = True
.Navigate2 "https://app.cfe.mx/Aplicaciones/CCFE/Tarifas/TarifasCREIndustria/Tarifas/DemandaIndustrialSub.aspx"
While .Busy Or .readyState < 4: DoEvents: Wend
Dim año As Long
año = 2018 '<== Year(Fecha)
With .document
If .querySelector("#ContentPlaceHolder1_Fecha_ddAnio [selected]").Value <> año Then
.querySelector("[value='" & CStr(año) & "']").Selected = True
End If
Stop 'delete me later
End With
.Quit
End With
End Sub