Экспортировать вкладку Internet Explorer в файл HTML - PullRequest
0 голосов
/ 29 октября 2018

У меня есть этот код, который идентифицирует активную вкладку

Sub Test()
Dim ieTab       As SHDocVw.InternetExplorer
Dim shWin       As SHDocVw.ShellWindows
Dim s           As String

Set shWin = New SHDocVw.ShellWindows

For Each ieTab In shWin
    s = ieTab.LocationURL
    If s = "my criteria string" Then
        'MsgBox "Page Found", 64
        'Here I need to export the active tab to HTML file
    Else
        'Do Nothing
    End If
Next ieTab

Set ieTab = Nothing
Set shWin = Nothing
End Sub

Мне нужно знать, как экспортировать эту активную вкладку в файл HTML Большое спасибо за помощь

1 Ответ

0 голосов
/ 29 октября 2018

После оператора IF я использовал эти строки, которые решили проблему

        f = FreeFile()
    Open ThisWorkbook.Path & "\LocalHTML.html" For Output As #f
    Print #f, ieTab.document.body.innerHTML
    Close #f

Существует новая проблема - символы Юникода при чтении с использованием другого кода @QHarr. Я не получил правильные результаты. Как я могу использовать ADODB для записи в экспортированный HTML?

Я пробовал эту часть и та же проблема тоже

    Set fso = CreateObject("Scripting.FileSystemObject")
Set myFile = fso.CreateTextFile(ThisWorkbook.Path & "\LocalHTML.html", False, True)    'Unicode=True
myFile.WriteLine ieTab.document.body.innerHTML
myFile.Close

Последнее рабочее решение Это код, который позволяет мне правильно экспортировать в HTML

        Set fStream = New ADODB.Stream
    With fStream
        .Charset = "UTF-8"
        .Open
        .WriteText ieTab.document.body.innerHTML
        .SaveToFile Environ("USERPROFILE") & "\Desktop\LocalHTML.html", 2
        .Close
    End With
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...