16
Aug
Daten aus MySQL in Excel importieren
Nicht selten kommt es vor, dass man Daten aus einer externen Quelle in Excel importieren möchte. Für einmalige Imports bietet sich hier oft das CSV-Format an. Möchte man die Daten allerdings leicht aktualisieren können, ist es weitaus komfortabler, eine direkte Verbindung zur Datenbank zu haben.
Wie funktioniert das?
Hierfür wollen wir kurz betrachten, wie man mit Excel auf eine MySQL-Datenbank zugreifen kann.
Zudem gibt es auch die nicht ganz offensichtliche Möglichkeit, eigene (komplexere) SQL-Queries zu nutzen. Als Voraussetzung muss Oracles MySQL ODBC Connector installiert sein. Er kann hier kostenlos heruntergeladen werden (Man muss sich nicht registrieren, sondern kann einfach auch „No thanks, just take me to the downloads!“ klicken).
In Excel muss man dann im Bereich „Daten“ auf „Aus anderen Quellen“ klicken und hier „Von Microsoft Query“ auswählen.

Nun öffnet sich ein Dialog, in dem man zunächst eine „Neue Datenquelle“ anlegen muss, die Verbindung zu unserer MySQL-Datenbank.

Anschließend öffnet sich der entsprechende Dialog:

An dieser Stelle kann man der Datenquelle einen beliebigen Namen geben und als Treiber „MySQL ODBC 5.1. Driver“ auswählen. Durch einen Klick auf „Verbinden…“ öffnet dann das Fenster für den MySQL Connector. Hier werden die Verbindungsdaten der Datenbank eintragen. Ist die Verbindung erfolgreich, kann man unter 4. noch die Standardtabelle auswählen und die Dialoge beide mit „OK“ verlassen.
Jetzt startet der Query Wizard von Microsoft Query. Die folgenden Schritte sind gut auf der MySQL Seite dokumentiert.
Während des Wizards kann man schon relativ viel auswählen und filtern. Reicht das, kann man die Daten direkt an Excel zurückgeben. Komplexere SQL Queries müssen per Hand eingegeben werden.
Statt die Daten an Excel zurückzugeben, geht man am Ende des Query Wizards in Microsoft Query. Durch einen Klick auf den Button „SQL“ hat man nun freie Hand.

Es kommt dann allerdings schnell vor, dass Microsoft Query die Abfrage nicht mehr darstellen kann und daher keine Vorschau auf das Ergebnis möglich ist. Kein Problem, sofern man sich seines Queries sicher ist.
Über „Datei“ und „Daten an Microsoft Excel zurückgeben“ gelangt man wieder zu Excel.

Dort wird man dann vom „Daten importieren“-Dialog begrüßt.

Ist die Entscheidung gefallen, in welcher Form man die Daten darstellen möchte, ist man fertig und kann die Daten nutzen.
Fazit
Fortan erfordert es nur noch einen Klick, um sich frische Daten aus der Datenbank zu holen. Unter Daten muss man nur noch den Button zum Aktualisieren drücken. Gegenüber dem Export/Import von CSV-Listen dürfte sich der Aufwand für das Anlegen der Datenverbindung schnell lohnen.

Reinhold schrieb am 14. Februar 2012 um 16:43 Uhr:
Super, hat mir sehr geholfen. Eine Anmerkung noch; es sieht so aus, als könnte microsoft query nicht mit 64-bit Odbc Treibern umgehen mein erster Versuch schlug also fehl, als ich auf meinem Window7 64-bit natürlich den Mysql 64-bit Odbc Treiber installierte. Mit der 32-bit Variante des MySql Odbc Treibers funktionierte es dann wie beschrieben. (Habe mir nicht die Mühe gemacht zu suchen, ob es auch eine 64Bit Version von query gibt; vielleicht weiss das ja ein anderer).