Thema Datum  Von Nutzer Rating
Antwort
10.04.2019 10:31:19 Alexander Vogelmann
NotSolved
10.04.2019 23:51:14 Gast36342
NotSolved
14.04.2019 23:05:17 Gast15342
NotSolved
16.04.2019 11:44:18 Zwenn
NotSolved
16.04.2019 19:17:19 Gast36342
NotSolved
16.04.2019 22:36:23 Zwenn
NotSolved
Rot HTML Datei in EXCEL importieren VBA
18.04.2019 14:07:43 Gast56244
NotSolved
22.04.2019 16:41:16 Zwenn
NotSolved

Ansicht des Beitrags:
Von:
Gast56244
Datum:
18.04.2019 14:07:43
Views:
497
Rating: Antwort:
  Ja
Thema:
HTML Datei in EXCEL importieren VBA

Nein, das ist eine abendfüllende Aufgabe. :)

Wenn du die Seite oder wohl deren Werte in die tabvelle klopfen willst,

must du das HTML parsen.HTML ist aber nur eine besoindere Variante von XML.

Und da gibt es das  DOMDocument. welches man über die Referenzierung (Verweis) auf das Microsoft XML Object erreicht.

Also erst diese DLL in dem VBA Anmelden. !

Hinterher kann man dann das HTML/XML wie auch immer auseinander nehmen

 

Private Sub xmlLoad(file_name, Sheet As String)
 
    Dim xml_doc As DOMDocument
    Dim ROOT_NODE As IXMLDOMElement
    Dim FCR_node As IXMLDOMElement
    Dim TXT As String
    Dim VALUES() As String
    Dim i As Integer
 
    ' Compose the XML file's name.
    '    file_name = App.Path
 
 
    ' Read the XML file.
    Set xml_doc = New DOMDocument
    xml_doc.LOAD file_name
    Set ROOT_NODE = xml_doc.documentElement
 
    ' Use the first node to make the column
    ' headers.
    Set FCR_node = ROOT_NODE.FirstChild
    TXT = GetAttributesAndNames(FCR_node)
    VALUES = split(TXT, "|")
    If Start = 0 Then
        For i = 0 To UBound(VALUES)
            ''debug.print  values(i)
            Sheets(Sheet).Cells(1, i + 1).Value = VALUES(i)
        Next i
    End If
 
    ' Read the  values.
    For Each FCR_node In ROOT_NODE.childNodes
        TXT = GetAttributeAndNameValues(FCR_node)
        VALUES = split(TXT, "|")
        If UBound(VALUES) > 0 Then
            '  'debug.print  values(0)
            For i = 0 To UBound(VALUES)
                ''debug.print  values(i)
                ''debug.print  Len(values(i)), nr
                Sheets(Sheet).Cells(NR, i + 1).Value = Left(VALUES(i), 1024)
            Next i
            NR = NR + 1
            'If right(STR(NR), 2) = "00" Then 'debug.print  NR
        End If
 
    Next
 
End Sub

 

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
10.04.2019 10:31:19 Alexander Vogelmann
NotSolved
10.04.2019 23:51:14 Gast36342
NotSolved
14.04.2019 23:05:17 Gast15342
NotSolved
16.04.2019 11:44:18 Zwenn
NotSolved
16.04.2019 19:17:19 Gast36342
NotSolved
16.04.2019 22:36:23 Zwenn
NotSolved
Rot HTML Datei in EXCEL importieren VBA
18.04.2019 14:07:43 Gast56244
NotSolved
22.04.2019 16:41:16 Zwenn
NotSolved