Ein auf SOAP basierender Webservice wurde in den vorangegangenen Teilen erfolgreich in Excel 2003 (Teil 2) und Excel 2007 (Teil 3) integriert. Es geht hier um die Nutzung einer einzelnen Zahl, nämlich des Wechselkurses zweier Währungen (hier USD nach EUR).
Die bis hier verwendete Lösung machte sich das eingebaute Visual Basic bzw. VBA zu nutze. Nachteile: Man muss immer dafür sorgen, dass die zugehörige Klassenbibliothek und das Modul mit der Funktion “GetRate” verfügbar sind. Außerdem sind VBA-Programme natürlich ein Sicherheitsrisiko – Excel 2007 erschwert daher die Nutzung, was ich als hinderlich empfand.
Daher hier jetzt eine viel, viel einfachere Lösung: Im Reiter “Daten” kann man externe XML-Datenquellen (“Aus anderen Datenquellen” / “XML”) integrieren. Dort, wo ein Dateipfad eingegeben werden soll, kann auch eine URL hinterlegt werden.
Der in Teil 2 und 3 verwendete Webservice bietet alternativ auch einen Abruf über einen simplen GET Aufruf (also eine URL mit Parametern). Die URL lautet für USD nach EUR: http://www.webservicex.net/CurrencyConvertor.asmx/ConversionRate?FromCurrency=USD&ToCurrency=EUR
Das Ergebnis ist ein einfaches XML-File. Excel benötigt beim Einbauen eine ganze Weile, bis es eine Warnung mit einem Lösungsvorschlag auswirft. Übernimmt man das einfach, so erhält man in der entsprechenden Zelle die gewünschte Zahl – den Wechselkurs – eingetragen.
Diese Zahl steht dann statisch in dieser Zelle bis man über die rechte Maustatse das Kontextmenü dieser Zelle aufruft und dort unter “XML” “Aktualisieren” auswählt. Das dauert dann einige Sekunden, um den aktuellen Wert aus dem Web in diese Zelle zu übertragen.
So finde ich das jetzt eine gelungene Lösung (für meinen Zweck zumindest)!
Step by step:
Schritt 1: Reiter “Daten” – “Aus anderen Datenquellen” – “XML”

Schritt 2: Statt Dateiname URL eingeben (siehe oben)

Schritt 3: Warten, während der Webservice angefragt und das Ergebnis validiert wird

Schritt 4: Warnung akzeptieren

Schritt 5: Lösungsvorschlag übernehmen (ggf. Zell-Adresse ändern)

Fertig!
Schritt 6: Bei Bedarf Zahl über Kontextmenü (“XML” “XM-Daten aktualisieren”) auffrischen
