Wie kann man MySQL und Excel miteinander Verbinden. Wichtig ist das Aus- Einlesen von Daten nachdem sie durch ein Excelmakro gelaufen sind?
4 Antworten
Das Auslesen von Datenbanken geht recht simpel über eine OLE-DB oder ODBC DNS in Excel (2010):
Datenquelle anlegen:
Treiber gibt es z. B. hier: https://dev.mysql.com/downloads/connector/odbc/5.3.html
[Win]Datenquellen[Enter] → Benutzer-DSN → Hinzufügen... → MySQL ODBC 5.3 Unicode Driver
Connection Parameters:
DSN: MySQL Test
Named Pipe: MySQL
User: root
Database: test
[TEST]→[OK]
In Excel:
Daten → Aus anderen Quellen → Vom Daten-Verbindungsassistenten → ODBC DSN → MySQL Test → Testtabelle → [OK]
_______________________
Das Schreiben in eine Datenbank funktioniert meines Wissens nur mit den VSTO. Ist etwas komplexer. Musst dich mal schlau machen.
PS: Hinzuzufügende Verweise (in VBA):
- Microsoft ActiveX Data Objects 6.1 Library
- Microsoft ActiveX Data Objects Recordset 6.0 Library
Vielen Dank für die Antwort
Es handelt sich dabei um ein Projekt für die Uni.
Wir haben einen Webserver und einzelne Gruppen, die ihre Berechnungen anstellen und diese auf dem Server abspeichern. Ich benötige einen Wert aus der Datenbank. Diesen Wert möchte ich gerne aus der Datenbank in meine Exceldatei ziehen und damit meine Berechnungen anfertigen. Am ende ist wieder nur einer meiner Werte für andere Gruppen interessant. Diesen einen Wert muss ich im Anschluss wieder in die DB schreiben.
Das ganze sollte einmal pro Stunde passieren, da es sich um echtzeitdaten handelt.
Hinsichtlich Einlesen nach Excel: Ribbon Daten -> Externe Daten abrufen: "aus andere Quellen". Hier gibt es SQL Server, was meiner Erfahrung nach auch funktioniert - der Teufel steckt im Detail.
Die Reihenfolge ist mir aber noch nicht ganz klar, Du willst Einlesen nachdem die durch ein Makro bearbeitet wurden oder steht das da nur missverständlich?
Hinsichtlich Rückweg aus Excel nach SQL kann ich mangels eigener Erfahrung nix beitragen.
Vielen Dank für die Antwort
Es handelt sich dabei um ein Projekt für die Uni.
Wir haben einen Webserver und einzelne Gruppen, die ihre Berechnungen anstellen und diese auf dem Server abspeichern. Ich benötige einen Wert aus der Datenbank. Diesen Wert möchte ich gerne aus der Datenbank in meine Exceldatei ziehen und damit meine Berechnungen anfertigen. Am ende ist wieder nur einer meiner Werte für andere Gruppen interessant. Diesen einen Wert muss ich im Anschluss wieder in die DB schreiben.
Das ganze sollte einmal pro Stunde passieren, da es sich um echtzeitdaten handelt.
Ich habe eine relativ große Exceltabelle in der eine Menge Berechnungen ablaufen. Bestimmte Daten beziehe ich dabei von einem Webserver und nach meinen Berechnungen muss ich relevante Daten auf den Server schreiben. Die Datenbank ist eine MySQL Datenbank. Funktioniert das Ein- Auslesen problemlos? und wenn ja wie?
Ich bedanke mich im Voraus
Speichern geht auch ohne VSTO mittels VBA. Ich habe das gerade getestet: