Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: VBA WebTables Name und Javascript Variable Frage

VBA WebTables Name und Javascript Variable Frage
09.05.2016 16:52:14
Tim
Hallo Leute,
bräuchte bitte eure Hilfe; ist es möglich beim auslesen einer Tabelle von einer Website auch den Namen, also die div id zu bekommen?
Mit diesem Code bekomme ich die Tabelle aber leider ohne Name:
Set shFirstQtr = Workbooks(1).Worksheets(1)
Set qtQtrResults = shFirstQtr.QueryTables _
.Add(Connection := "URL;http://datasvr/98q1/19980331.htm", _
Destination := shFirstQtr.Cells(1,1))
With qtQtrResults
.WebFormatting = xlNone
.WebSelectionType = xlSpecifiedTables
.WebTables = "1,2"
.Refresh
End With 

Den Name finde ich sonst nur mehr in einem Script auf der Website, nur habe ich bis jetzt keine
Lösung gefunden die Variable aus dem Javascript auszulesen..
Vielen Dank

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA WebTables Name und Javascript Variable Frage
09.05.2016 18:33:12
ChrisL
Hi Tim
Ich lasse die Frage offen.
Was mir im Moment noch nicht klar ist, ist ob sich alles Gesuchte im HTML Code findet. DIV ID ist ja noch kein JS.
Anders ausgedrückt, an den HTML body solltest du ran kommen (google mal "excel parse innerhtml"). Wenn du die Interaktion des Users wissen willst (z.B. welche Auswahl wurde getroffen), dann habe ich auch keinen Plan.
cu
Chris

Anzeige
AW: VBA WebTables Name und Javascript Variable Frage
10.05.2016 16:15:16
Tim
Hi Chris,
danke für deine Antwort, das mit dem innerhtml hat funktioniert :)
Mit diesem Code habe ich es dann geschafft:

Option Explicit
Sub ParseHTML()
Dim coll As Collection
Dim o
With CreateObject("msxml2.xmlhttp")
.Open "GET", "http://pastebin.com/raw.php?i=FLw9cMFb", False
.send
Set coll = GetBetween(.responseText)
End With
For Each o In coll
MsgBox o
Next o
End Sub
Function GetBetween(stri As String) As Collection
Dim d As Object, match
Set GetBetween = New Collection
With CreateObject("vbscript.regexp")
.Pattern = "tr id=(.*?)class"
.Global = True
.ignorecase = True
Set d = .Execute(stri)
For Each match In d
GetBetween.Add match.submatches(0)
Next match
End With
End Function
Vielen Dank nochmal :)
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige