Очистить локальный файл HTML - PullRequest
0 голосов
/ 09 октября 2018

Я хочу открыть локальный HTML-файл и сохранить его как HTMLDocument, чтобы я мог преобразовать его в Excel.Однако вся доступная информация предназначена для HTML-страниц в Интернете.Так, например, этот код прекрасно работает для www.bbc.co.uk, но не работает для локального файла:

Sub queryXMLlocal()
Dim XMLPage As New MSXML2.XMLHTTP60
Dim HTMLDoc As New MSHTML.HTMLDocument

Debug.Print Application.ActiveWorkbook.Path

XMLPage.Open "GET", "<filepath>\KOND.html", False
XMLPage.send

If XMLPage.Status <> 200 Then
MsgBox "Problem" & vbNewLine & XMLPage.Status & " - " & XMLPage.statusText
Exit Sub
End If

End Sub

Альтернативно использование

Sub GetHTMLDocument()

Dim IE As New SHDocVw.internetExplorer
Dim HTMLDoc As MSHTML.HTMLDocument


IE.Visible = True
IE.navigate "https://www.bbc.co.uk/"

Do While IE.readyState <> READYSTATE_COMPLETE
Loop

    ' Wait while IE loading...

Set HTMLDoc = IE.Document
end sub

работает, но когда я используюВ локальном файле я получаю сообщение об ошибке:

"вызванный объект отключен от своего клиента"

Могу ли я просто использовать HTMLdocument.open?Хотя я не могу заставить это работать.

1 Ответ

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

Я обычно использую эту функцию:

Public Function GetHTMLFileContent(ByVal filePath As String) As HTMLDocument
    Dim fso As Object, hFile As Object, hString As String, html As New HTMLDocument
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set hFile = fso.OpenTextFile(filePath)

    Do Until hFile.AtEndOfStream
        hString = hFile.ReadAll()
    Loop

    html.body.innerHTML = hString
    Set GetHTMLFileContent = html
End Function
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...