Aktualisierter Wechselkurs in Excel

Ich habe immer wieder Möglichkeiten analysiert, Daten aus dem Internet in Excel mit anschließender automatischer Aktualisierung zu importieren. Im Speziellen:

  • In älteren Versionen von Excel 2007-2013 konnte dies mit einer direkten Webanfrage erfolgen.
  • Ab 2010 geht das ganz bequem mit dem Power Query Add-In.

Zu diesen Methoden in den neuesten Versionen von Microsoft Excel können Sie jetzt eine weitere hinzufügen – den Import von Daten aus dem Internet im XML-Format mithilfe integrierter Funktionen.

XML (eXtensible Markup Language = Extensible Markup Language) ist eine universelle Sprache zur Beschreibung beliebiger Daten. Tatsächlich handelt es sich um einfachen Text, dem jedoch spezielle Tags hinzugefügt wurden, um die Datenstruktur zu kennzeichnen. Viele Websites bieten kostenlose Streams ihrer Daten im XML-Format zum Herunterladen an. Auf der Website der Zentralbank unseres Landes (www.cbr.ru) werden insbesondere mit Hilfe einer ähnlichen Technologie Daten zu den Wechselkursen verschiedener Währungen angegeben. Von der Website der Moskauer Börse (www.moex.com) können Sie Kurse für Aktien, Anleihen und viele andere nützliche Informationen auf die gleiche Weise herunterladen.

Seit Version 2013 verfügt Excel über zwei Funktionen, um XML-Daten direkt aus dem Internet in Arbeitsblattzellen zu laden: INTERNETSERVICE (INTERNETSERVICE) и FILTER.XML (XML-FILTER). Sie arbeiten paarweise – zuerst die Funktion INTERNETSERVICE führt eine Anfrage an die gewünschte Site aus und gibt ihre Antwort im XML-Format zurück und verwendet dann die Funktion FILTER.XML Wir „parsen“ diese Antwort in Komponenten und extrahieren daraus die Daten, die wir benötigen.

Schauen wir uns die Funktionsweise dieser Funktionen anhand eines klassischen Beispiels an – den Import des Wechselkurses einer beliebigen Währung, die wir für ein bestimmtes Datumsintervall benötigen, von der Website der Zentralbank unseres Landes. Als Leerzeichen verwenden wir folgende Konstruktion:

Aktualisierter Wechselkurs in Excel

Hier:

  • Die gelben Zellen enthalten die Start- und Enddaten des für uns interessanten Zeitraums.
  • Der blaue hat eine Dropdown-Liste mit Währungen, die den Befehl verwenden Daten – Validierung – Liste (Daten – Validierung – Liste).
  • In den grünen Zellen verwenden wir unsere Funktionen, um eine Abfragezeichenfolge zu erstellen und die Antwort des Servers zu erhalten.
  • Die Tabelle auf der rechten Seite ist ein Verweis auf Währungscodes (wir werden sie etwas später benötigen).

Los geht's!

Schritt 1. Erstellen einer Abfragezeichenfolge

Um die erforderlichen Informationen von der Website zu erhalten, müssen Sie sie richtig fragen. Wir gehen zu www.cbr.ru und öffnen den Link in der Fußzeile der Hauptseite. Technische Ressourcen'- Abrufen von Daten mit XML (http://cbr.ru/development/SXML/). Wir scrollen etwas nach unten und im zweiten Beispiel (Beispiel 2) finden Sie das, was wir brauchen – die Wechselkurse für ein bestimmtes Datumsintervall abrufen:

Aktualisierter Wechselkurs in Excel

Wie Sie dem Beispiel entnehmen können, muss die Abfragezeichenfolge Startdaten enthalten (date_req1) und Endungen (date_req2) des für uns interessanten Zeitraums und des Währungscodes (VAL_NM_RQ), deren Rate wir erhalten möchten. Die wichtigsten Währungscodes finden Sie in der folgenden Tabelle:

Währung

Code

                         

Währung

Code

Australischer Dollar R01010

Litauische Litas

R01435

Österreichischer Schilling

R01015

Litauischer gutschein

R01435

Aserbaidschanisches Manat

R01020

Moldauischer Leu

R01500

Pfund

R01035

РќРµРјРµС † РєР ° СЏ РјР ° СЂРєР °

R01510

Angolanisches neues Kwanza

R01040

Niederländischer Gulden

R01523

Armenischer Dram

R01060

norwegische Krone

R01535

Weißrussischer Rubel

R01090

Polnischer Zloty

R01565

Belgischer Franken

R01095

Portugiesischer Escudo

R01570

Der bulgarische Löwe

R01100

Rumänischer Leu

R01585

Brasilianischer Real

R01115

Singapur-Dollar

R01625

Ungarische Forint

R01135

Surinam-Dollar

R01665

Hongkong Dollar

R01200

Tadschikischer Somoni

R01670

Griechische Drachme

R01205

Tadschikischer Rubel

R01670

Dänische Krone

R01215

Türkische Lira

R01700

US Dollar

R01235

Turkmenisches Manat

R01710

Euro

R01239

Neuturkmenischer Manat

R01710

indische Rupie

R01270

Usbekische Summe

R01717

Irisches Pfund

R01305

Ukrainische Griwna

R01720

Isländische Krone

R01310

Ukrainische Karbowanez

R01720

Spanische Peseten

R01315

Finnische Marke

R01740

Italienische Lire

R01325

Französischer Franken

R01750

Kasachischer Tenge

R01335

Tschechische Krone

R01760

Kanadischer Dollar

R01350

Schwedische Krone

R01770

Kirgisisch som

R01370

Schweizer Franken

R01775

chinesischer Yuan

R01375

Estnische Krone

R01795

Kuwaitischer Dinar

R01390

Jugoslawischer neuer Dinar

R01804

Lettische Lats

R01405

Südafrikanischer Rand

R01810

Libanesisches Pfund

R01420

Republik Korea hat gewonnen

R01815

Japanische YEN

R01820

Eine vollständige Anleitung zu den Währungscodes ist auch auf der Website der Zentralbank verfügbar – siehe http://cbr.ru/scripts/XML_val.asp?d=0

Jetzt bilden wir eine Abfragezeichenfolge in einer Zelle auf einem Blatt mit:

  • der Textverkettungsoperator (&), um ihn zusammenzusetzen;
  • Eigenschaften VPR (SVERWEIS)um den Code der Währung zu finden, die wir im Verzeichnis benötigen;
  • Eigenschaften TEXT (TEXT), der das Datum nach dem vorgegebenen Muster Tag-Monat-Jahr durch einen Schrägstrich umwandelt.

Aktualisierter Wechselkurs in Excel

="http://cbr.ru/scripts/XML_dynamic.asp?date_req1="&ТЕКСТ(B2;"ДД/ММ/ГГГГ")&  "&date_req2="&ТЕКСТ(B3;"ДД/ММ/ГГГГ")&"&VAL_NM_RQ="&ВПР(B4;M:N;2;0)  

Schritt 2. Führen Sie die Anfrage aus

Jetzt verwenden wir die Funktion INTERNETSERVICE (INTERNETSERVICE) mit der generierten Abfragezeichenfolge als einzigem Argument. Die Antwort wird eine lange Zeile XML-Code sein (es ist besser, den Zeilenumbruch zu aktivieren und die Zellengröße zu erhöhen, wenn Sie ihn vollständig sehen möchten):

Aktualisierter Wechselkurs in Excel

Schritt 3. Analysieren der Antwort

Um die Struktur der Antwortdaten besser nachvollziehen zu können, verwenden Sie besser einen der Online-XML-Parser (z. B. http://xpather.com/ oder https://jsonformatter.org/xml-parser). die XML-Code visuell formatieren, Einzüge hinzufügen und die Syntax farblich hervorheben kann. Dann wird alles viel klarer:

Aktualisierter Wechselkurs in Excel

Nun sieht man deutlich, dass die Kurswerte von unseren Tags umrahmt werden ..., und Daten sind Attribute Datum bei Tags .

Um sie zu extrahieren, wählen Sie eine Spalte mit zehn (oder mehr – wenn Sie mit einem Rand fertig sind) leeren Zellen auf dem Blatt aus (da ein Datumsintervall von 10 Tagen festgelegt wurde) und geben Sie die Funktion in die Bearbeitungsleiste ein FILTER.XML (FILTERXML):

Aktualisierter Wechselkurs in Excel

Hier ist das erste Argument ein Link zu einer Zelle mit einer Serverantwort (B8) und das zweite ein Abfragestring in XPath, einer speziellen Sprache, mit der auf die erforderlichen XML-Codefragmente zugegriffen und diese extrahiert werden können. Hier können Sie beispielsweise mehr über die Sprache XPath lesen.

Es ist wichtig, dass Sie nach Eingabe der Formel nicht drücken Enter, und die Tastenkombination Ctrl+Shift+Enter, dh als Matrixformel eingeben (die geschweiften Klammern darum werden automatisch hinzugefügt). Wenn Sie die neueste Version von Office 365 mit Unterstützung für dynamische Arrays in Excel haben, dann ist eine einfache Enter, und Sie müssen keine leeren Zellen im Voraus auswählen – die Funktion selbst nimmt so viele Zellen, wie sie benötigt.

Um Daten zu extrahieren, gehen wir genauso vor – wir wählen mehrere leere Zellen in der angrenzenden Spalte aus und verwenden dieselbe Funktion, aber mit einer anderen XPath-Abfrage, um alle Werte der Datumsattribute aus den Datensatz-Tags zu erhalten:

=FILTER.XML(B8;”//Datensatz/@Datum”)

Wenn Sie in Zukunft die Daten in den ursprünglichen Zellen B2 und B3 ändern oder eine andere Währung in der Dropdown-Liste der Zelle B3 auswählen, wird unsere Abfrage automatisch aktualisiert und auf den Server der Zentralbank für neue Daten verwiesen. Um ein Update manuell zu erzwingen, können Sie zusätzlich die Tastenkombination verwenden Ctrl+Andere+F9.

  • Importieren Sie den Bitcoin-Kurs über Power Query in Excel
  • Importieren Sie Wechselkurse aus dem Internet in ältere Versionen von Excel

Hinterlassen Sie uns einen Kommentar