Как получить значения с определенной веб-страницы, которая открыта в браузере Firefox - PullRequest
0 голосов
/ 06 апреля 2019

Я использую AppActivate, чтобы сосредоточиться на веб-странице, которая уже открыта в Firefox (не хочу открывать новую вкладку или другой экземпляр Firefox).На этой вкладке я хотел бы скопировать определенные значения с помощью getElementById и вставить на новый лист для отправки по электронной почте.Может ли кто-нибудь помочь, пожалуйста?Я пробовал разные способы, но никто не работал до сих пор.

Sub startFirefox()
    Dim appfile As String
    Dim fftask As Double

    appfile = "Firefox"
    On Error Resume Next
    AppActivate "Firefox"
        If Err <> 0 Then
            Err = 0
            fftask = Shell(appfile, 1)
            If Err <> 0 Then MsgBox "Cannot start FF" 'if firefox is not open going to open a new instance
        End If

    '2nd part that i need to get the values from web page
    Dim varA, Url As String
    Url = "example"
    Dim Site As Object
    Set Site = CreateObject("firefox.application")

    Dim oHTMLDoc As Object
    Set oHTMLDoc = Site.Document
    varA = oHTMLDoc.getElementById("X5").Value

    MsgBox varA  'here is not showing any value. I put the msgbox just to see if is getting any value
End Sub

1 Ответ

0 голосов
/ 06 апреля 2019

Нет такой вещи как Firefox.Application.Так что это никогда не будет работать.

Программисты используют Internet Explorer - программируемый браузер.Поэтому использование Set site = CreateObject("InternetExplorer.Application")

AppActivate не требуется при использовании COM, и у него есть большой набор правил, препятствующих его работе с программами (он предназначен для ПРЕДОТВРАЩЕНИЯ программ, крадущих фокус).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...