Wie verbinde ich MySQL per VBA in Excel?

Um MySQL per VBA in Excel zu verbinden, musst du zunächst sicherstellen, dass du den passenden ODBC-Treiber für MySQL installiert hast. Danach kannst du mit VBA eine Verbindung zur Datenbank herstellen. Hier ist ein einfaches Beispiel, wie du das machen kannst:

  • ODBC-Treiber installieren:
    • Lade den MySQL ODBC Connector von der offiziellen MySQL-Website herunter und installiere ihn.
  • Datenquelle einrichten (optional):
    • Du kannst eine ODBC-Datenquelle für MySQL über das ODBC Data Source Administrator-Tool von Windows einrichten. Dies ist nicht zwingend notwendig, aber es kann die Verwaltung der Verbindungsdetails erleichtern.
  • VBA-Code schreiben:

Öffne Excel und gehe zu `Entwicklertools` > `Visual Basic`, um den VBA-Editor zu öffnen. Füge dann ein neues Modul hinzu und gib den folgenden Code ein:

   Sub ConnectToMySQL()
       Dim conn As Object
       Dim rs As Object
       Dim connStr As String
       Dim query As String
       
       ' Verbindungszeichenfolge
       connStr = "Driver={MySQL ODBC 8.0 Unicode Driver};" & _
                 "Server=dein_server;" & _
                 "Database=deine_datenbank;" & _
                 "User=dein_benutzername;" & _
                 "Password=dein_passwort;" & _
                 "Option=3;"
       
       ' Create a new ADODB connection
       Set conn = CreateObject("ADODB.Connection")
       Set rs = CreateObject("ADODB.Recordset")
       
       ' Open the connection
       On Error GoTo errHandler
       conn.Open connStr
       
       ' SQL-Abfrage
       query = "SELECT * FROM deine_tabelle"
       
       ' Recordset öffnen
       rs.Open query, conn
       
       ' Daten anzeigen
       If Not rs.EOF Then
           Dim i As Integer
           For i = 0 To rs.Fields.Count - 1
               Debug.Print rs.Fields(i).Name, rs.Fields(i).Value
           Next i
       End If
       
       ' Alles schließen
       rs.Close
       conn.Close
       Exit Sub
       
   errHandler:
       MsgBox "Fehler bei der Verbindung: " & Err.Description
       If Not rs Is Nothing Then If rs.State = 1 Then rs.Close
       If Not conn Is Nothing Then If conn.State = 1 Then conn.Close
   End Sub
  • Anpassungen vornehmen:
    • Ersetze `dein_server`, `deine_datenbank`, `dein_benutzername`, `dein_passwort` und `deine_tabelle` mit den entsprechenden Werten für deinen MySQL-Server und deine Datenbank.
  • Ausführen des Codes:
    • Starte das Makro, indem du `F5` drückst, oder gehe im Menü auf `Ausführen` > `Sub/UserForm ausführen…` und wähle `ConnectToMySQL`.

Dieser Code öffnet eine Verbindung zur MySQL-Datenbank und führt eine einfache SELECT-Abfrage aus. Die Ergebnisse der Abfrage werden in den Debug-Ausgaben angezeigt. Für eine produktive Nutzung solltest du den Code weiter ausbauen, um die Daten in ein Excel-Arbeitsblatt zu schreiben und eine umfassendere Fehlerbehandlung hinzuzufügen.

Unlock Your Potential

Excel

Basic - Advanced

Access

Access Basic - Advanced

Power BI

Power BI Basic - Advanced

Help us grow the project