Oli Garch 1. August @akista Eine Möglichkeit bietet die Onvista-api. Die URL für den Stoxx Europe 600: https://api.onvista.de/api/v2/indices/193741/snapshot?idNotation Es wird hier nicht die ISIN verwendet, sondern eine Onvista-eigene idNotifikation (193741). Mit Webdienst: =WEBDIENST("https://api.onvista.de/api/v2/indices/193741/snapshot?idNotation") Um daraus den Kurs zu filtern nehmen wir diese Formel: =WECHSELN(TEIL(K5;FINDEN("last"":";K5)+6;FINDEN(",";TEIL(K5;FINDEN("last"":";K5)+6;12))-1);".";",")/1 in Zelle K5 steht hier die Webdienst-Funktion Man könnte jetzt K5 4x durch die Webdienst-Funktion ersetzen: =WECHSELN(TEIL(WEBDIENST("https://api.onvista.de/api/v2/indices/193741/snapshot?idNotation");FINDEN("last"":";WEBDIENST("https://api.onvista.de/api/v2/indices/193741/snapshot?idNotation"))+6;FINDEN(",";TEIL(WEBDIENST("https://api.onvista.de/api/v2/indices/193741/snapshot?idNotation");FINDEN("last"":";WEBDIENST("https://api.onvista.de/api/v2/indices/193741/snapshot?idNotation"))+6;12))-1);".";",")/1 Das sieht nicht nur unübersichtlich aus, sondern führt auch dazu, dass die api 4x aufgerufen wird und somit nicht nur für die Kursquelle belastend ist, sondern auch die eigene Datei langsamer macht. Also nur zu empfehlen, wenn sehr wenige Kurse auf diese Weise abgerufen werden. Ich hoffe, es hilft dir weiter. Diesen Beitrag teilen Link zum Beitrag
akista 3. August @Oli Garch Vielen Dank. Das funktioniert und hat wieder sehr geholfen. Gibt es eine Art Leitfaden, wie du die APIs bei den verschiedenen Anbietern findest (also die genaue URL) und die Formel baust? Ich würde das gerne selber lernen, um nicht bei jedem Problem fragen zu müssen. Diesen Beitrag teilen Link zum Beitrag
Oli Garch 4. August @akista Ich weiß nicht, ob es irgendwo Anleitungen gibt. Aber ich kann ja mal beschreiben, wie ich so vorgehe. Es basiert alles auf eigene Erfahrungen durch probieren und beruht nicht auf fundierten Kenntnissen. Beispiel: ING Auf https://www.ing.de/ in die Wertpapiersuche DE0005557508 eingeben. https://wertpapiere.ing.de/investieren/aktienportrait/DE0005557508 wird angezeigt. Alle weiteren Punkte beziehen sich auf die Verwendung von Firefox als Browser. Mit Edge oder Chrome funktioniert es fast identisch, nur dass einige Standard-Einstellungen etwas anderes anzeigen und einige Bezeichnungen minimal abweichen. Mit Strg-Shift-i die Entwicklungsumgebung anzeigen lassen. In Firefox wird sie unterhalb der Webseite angezeigt, was zunächst einmal übersichtlicher ist. Links gibt es einen Mülleimer, damit kann man alle angezeigten Ergebnisse löschen. Jetzt links die Netzwerkanalyse und im rechten Bereich XHR (XMLHttpRequest) auswählen. Dann die Webseite aktualisieren. Wenn man jetzt in der Spalte Datei mit der Maus über die einzelnen Zeilen in dieser Spalte fährt, werden URLs angezeigt. Der Rest ist reine Fleißarbeit: Mit einem Rechtsklick auf die Zeile, Wert kopieren - Adresse kopieren die Adresse kopieren und in einer neuen Seite in die Adresszeile kopieren und nachsehen, ob etwas brauchbares angezeigt wird. Hier wird man in der vierten Zeile fündig, nämlich: https://component-api.wertpapiere.ing.de/api/v1/components-ng/instrumentheader/DE0005557508 Da die Werte im json-Format strukturiert sind wird das Ergebnis schön übersichtlich angezeigt. Wir könnten uns jetzt noch auf der Webseite das Blatt mit den Handelsplätzen anzeigen lassen und nach dem Löschen der Anzeige in der Entwicklungsumgebung und Aktualisierung der Webseite finden wir in der Spalte Datei der Entwicklungsumgebung in Zeile 6 die URL: https://component-api.wertpapiere.ing.de/api/v1/components/exchanges/DE0005557508 Da lassen sich bid, ask, last, usw. von verschiedenen Börsenplätzen extrahieren, was etwas aufwändiger ist als bei der obigen Adresse. Da werden aber auch nur die Direkthandelskurse angezeigt. Das wär's auch schon zum Finden von URLs. Interessant sind z.B. noch: Consors: https://www.consorsbank.de/web-financialinfo-service/api/marketdata/stocks?id=DE0005557508&field=BasicV1&field=ExchangesV2 DivviDiary: https://api.divvydiary.com/symbols/DE0005557508 (für Dividende, Dividendenrendite) Onvista hat auch eine api, aber die Ergebnisse der interessanten URLs sind zum Teil so groß, dass sie von Excel nicht verarbeitet werden können ( > 32767 Zeichen) Und jetzt zur Formel: Neben Webdienst benötigen wir noch TEIL, FINDEN und WECHSELN für die String-Manipulation. Ein Beispiel: In Zelle K2 einer Tabelle geben wir ein: =WEBDIENST("https://component-api.wertpapiere.ing.de/api/v1/components/instrumentheader/"&C2) In Zelle C2 tragen wir eine ISIN ein, z.B. DE0005557508 Der Kurs soll in D2 stehen: Wir gehen schrittweise vor und geben in D2 zunächst folgendes: =TEIL(K2;49;20), angezeigt wird: 31.47,"close":31.080 Die Preisangabe beginnt also bei Zeichen 49 im dem String, der in Zelle K2 durch die Webdienstfunktion erzeugt wird. Nun verändert sich bei anderen Wertpapieren diese Position beliebig, weil davor der Name des Wertpapiers steht. Deshalb ersetzen wir die Zahl 49 in der Formel durch: FINDEN("price";K2) also: =TEIL(K2;FINDEN("price";K2);20) Das Ergebnis: price":31.47,"close" Es ist noch nicht ganz das was wir wollten, denn das Ergebnis der Funktion FINDEN ist 42, die Anfangsposition des Suchwortes 'price'. Wir addieren zum Wert von FINDEN noch 7 hinzu, was ja beim Suchwort Price immer gleich bleiben dürfte. Jetzt lautet die Formel: =TEIL(K2;FINDEN("price";K2)+7;20) Ergebnis: 31.47,"close":31.080 In die Ausgangsformel haben wir als Stringlänge pauschal 20 angegeben, weil wir die genaue Länge noch nicht kannten. Wir sehen jetzt, dass das Ende des Wertes für Price durch das erste Auftreten eines Kommas bestimmt werden kann. Wir ersetzen deshalb die Zahl 20 durch folgende Formel: =FINDEN(",";TEIL(K2;FINDEN("price";K2)+7;20)) Wir suchen das Komma in dem bis jetzt erarbeiteten Teilstring und nicht einfach in K2. Das Ergebnis dieser FINDEN-Operation ist 6. Da das Komma nicht Teil des gesuchten Wertes ist, müssen wir das Ergebnis um 1 reduzieren, also: =FINDEN(",";TEIL(K2;FINDEN("price";K2)+7;20))-1 Nun können wir in: =TEIL(K2;FINDEN("price";K2)+7;20) die 20 durch FINDEN(",";TEIL(K2;FINDEN("price";K2)+7;20))-1 ersetzen, also: =TEIL(K2;FINDEN("price";K2)+7;FINDEN(",";TEIL(K2;FINDEN("price";K2)+7;20))-1) Das Ergebnis: 31.47 Jetzt tauschen wir nur noch den Punkt durch ein Komma aus, damit das Ergebnis auch unserem Zahlenformat entspricht: =WECHSELN(TEIL(K2;FINDEN("price";K2)+7;FINDEN(",";TEIL(K2;FINDEN("price";K2)+7;20))-1);".";",") Trotzdem erkennt Excel das Ergebnis noch nicht als Zahl, der Wert steht in einer als Standard formatierten Zelle immer noch linksbündig. Durch die Division der gesamten Formel durch 1 zwingen wir Excel zum Umdenken: =WECHSELN(TEIL(K2;FINDEN("price";K2)+7;FINDEN(",";TEIL(K2;FINDEN("price";K2)+7;20))-1);".";",")/1 : und fertig. Diesen Beitrag teilen Link zum Beitrag
akista 4. August Danke dir. Ich werde es bei Gelegenheit mal ausprobieren. Diesen Beitrag teilen Link zum Beitrag
chirlu 4. August Am 1.8.2025 um 19:35 von Oli Garch: Es wird hier nicht die ISIN verwendet, sondern eine Onvista-eigene idNotifikation (193741). Die ist nicht Onvista-eigen, sondern von Factset und wird dementsprechend auch an vielen anderen Stellen im In- und Ausland genutzt: https://developer.factset.com/learn/widgets-identifiers Diesen Beitrag teilen Link zum Beitrag
Oli Garch 4. August vor 27 Minuten von chirlu: Die ist nicht Onvista-eigen, sondern von Factset und wird dementsprechend auch an vielen anderen Stellen im In- und Ausland genutzt Vielen Dank für die Info, wieder was dazugelernt. Oli Diesen Beitrag teilen Link zum Beitrag