Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1748to1752
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Daten aus Website laden

Daten aus Website laden
29.03.2020 20:35:27
Markus
Hallo zusammen,
leider hatte ich auf meine letzte Frage keine hilfreiche Antwort erhalten, weshalb ich mich selber versucht habe um eine Lösung zu kümmern. Die Dinge, die ich dazu brauche, sind für mich aber sowohl im Excel an sich neu, als auch im VBA.
Zu meinem Grundanliegen:
Ich möchte mir eine umfangreiche Exceltabelle mit Aktiendaten erstellen, damit ich diese dann weiter bearbeiten kann.
Zur Vorgehensweise:
Nachdem ich geschaut hatte, bin ich ursprünglich auf Yahoo verwiesen wurden. Mit Yahoo an sich habe ich bisher nichts zutun gehabt. Einige Seiten und Videos haben anscheinend in der Vergangenheit eine API genutzt, um sich verhältnismäßig einfach die Daten, die man haben möchte über eine CSV zu ziehen. Anscheinend funktioniert das heutzutage aber nicht mehr.
Nun wäre meine erste Frage:
Kennt sich jemand grundlegend mit der Thematik aus und kann mir weiterhelfen, ob das noch irgendwo anders geht oder wie es vielleicht anders gemacht werden kann?
Da oben genannte Thematik (für mich) erst einmal nicht mehr geht, habe ich versucht mich über QueryTables ans Werk zu machen. Das ist für mich aber auch ein komplett neues Gebiet, mit dem ich bisher noch nie etwas zutun hatte. Dementsprechend fällt es mir auch schwer mich mit dem Code zurecht zu finden.
Vom Vorgehen:
Ich habe mir eine Tabelle erstellt, in der die erste Spalte Zeile für Zeile durchlaufen wird (da stehen die Aktien drin) und dann sollte die entsprechende Homepage bei Yahoo geladen werden, damit alle Tabelleninhalte über die Queryfunktion in ein separates WB geladen werden. Ziel sollte dann hinterher sein, dass ich die Daten alle zusammenfasse und in meine eigentliche Tabelle lade. Das dauert zwar sehr lange, wenn die Queries geladen werden, aber der Rest funktioniert zum Glück sehr schnell.
Nun habe ich versucht den Code so anzupassen, dass er das tatsächlich auch für jeden Zelleninhalt übernimmt, aber in dem Queriescode wird im hinteren Teil zum Beispiel auf einen Wert 1,54 verwiesen, der zwar in der aktuellen Tabelle drin steht, der aber bei einer anderen Aktie eben ein anderer Wert ist. Kann ich einfach von diesem Code etwas weg nehmen oder wie bringe ich es ihm bei, dass er das anpassen muss?
Ich wäre euch sehr verbunden, wenn ihr mir behilflich sein könnt oder andere Ideen habt, wie ich das machen kann, ohne dass das so lange läd.
Ich wünsche euch noch einen schönen Sonntag :)
LG Markus
ActiveWorkbook.Queries.Add Name:="Aktienkursverlauf", Formula:= _
"let" & Chr(13) & "" & Chr(10) & " Quelle = Web.Page(Web.Contents(""https://de.finance.yahoo.com/quote/" & aktie & "/key-statistics?p=" & aktie & """))," & Chr(13) & "" & Chr(10) & " Data3 = Quelle{3}[Data]," & Chr(13) & "" & Chr(10) & " #""Geänderter Typ"" = Table.TransformColumnTypes(Data3,{{""Beta (5 J., monatlich)"", type text}, {""1,54"", type number}})" & Chr(13) & "" & Chr(10) & "in" & Chr(13) & "" & Chr(10) & " #""Geänderter Typ"""
Sheets.Add after:=ActiveSheet
With ActiveSheet.ListObjects.Add(SourceType:=0, Source:= _
"OLEDB;Provider=Microsoft.Mashup.OleDb.1;Data Source=$Workbook$;Location=Aktienkursverlauf;Extended Properties=""""" _
, Destination:=Range("$A$1")).QueryTable
.CommandType = xlCmdSql
.CommandText = Array("SELECT * FROM [Aktienkursverlauf]")
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.ListObject.DisplayName = "Aktienkursverlauf"
.Refresh BackgroundQuery:=False
End With

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten aus Website laden
30.03.2020 08:35:32
volti
Hallo Markus,
zu Deinem geäußerten Problem kann ich Dir aktuell nicht helfen, u.a. weil die Seite Cookie-Freigabe verlangt und ich auch keinen Nachbau machen möchte.
Ich habe jedoch kürzlich auch ein Aktientool angefangen, welches so einiges von ariva.de und Finanzen.de runterlädt. Ich stelle es Dir einfach mal zur Verfügung.
Das Tool ist noch recht jung. Bei Fehlern und kleinen Änderungen gerne melden.
Wenn Du damit nichts anfangen kannst, stelle den Beitrag dann einfach wieder auf offen.
Aktienkurse.xlsb
viele Grüße
Karl-Heinz
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige