Ziel: Access-Daten in Power BI â ohne Umweg, aber mit Struktur
Access ist kein BI-Tool.
Aber als Datenquelle ist es oft gesetzt.
Ich zeig Dir, wie Du Power BI damit sinnvoll verbindest â ohne Dir Knoten in den Kopf zu laden.
Variante 1: Access-Datei direkt anbinden
In Power BI Desktop:
- âDaten abrufenâ â âAccess-Datenbankâ
.accdb
oder.mdb
auswĂ€hlen- Tabellen, Abfragen oder verknĂŒpfte Tabellen auswĂ€hlen
Fertig. Power BI lÀdt alles als Snapshot.
Aber: keine Live-Verbindung, keine inkrementelle Aktualisierung.
đ gut fĂŒr Berichte mit periodischem Snapshot oder Einzelplatzlösungen.
Variante 2: Nur Abfragen freigeben
Du willst Power BI nur auf vorbereitete Daten loslassen?
Dann erstellst Du in Access spezielle Abfragen, z.âŻB.:
qryBI_UmsatzProMonat
qryBI_ArtikelABC
qryBI_OffenePosten
In Power BI:
- Nur diese
qryBI_*
-Objekte laden - So bleibt die Ladezeit kurz und die Datenmenge ĂŒberschaubar
đ Access macht die Voraggregation, Power BI ĂŒbernimmt nur Visualisierung.
Variante 3: Performance optimieren â keine verschachtelten Queries
Power BI hasst verschachtelte Access-Abfragen mit SELECT * FROM qryXY
.
Lieber:
- alles flach und direkt auf Tabellen
- keine Makros, keine VBA-Funktionen in der Abfrage
- keine Formatierungen oder Dom-Funktionen (
DLookUp
,DSum
, âŠ)
đ Power BI braucht âreineâ SQL-Abfragen.
Variante 4: Datenexport aus Access als CSV automatisieren
DoCmd.TransferText acExportDelim, , "qryBI_Umsatz", "C:\BI\Umsatz.csv", True
Dann in Power BI die CSV-Datei als Datenquelle verwenden.
Vorteil:
- entkoppelt Access und Power BI
- kann nachts vorbereitet werden
- keine ODBC-AbhÀngigkeit
đ bei Netzlaufwerken oder Mehrbenutzersystem sinnvoll.
Variante 5: Power BI Gateway + Access-Datei im Netzwerk
Wenn Du Power BI Service nutzen willst:
- Access-Datei muss auf erreichbarem Netzlaufwerk liegen
- Power BI Gateway muss lokal auf dem Server laufen
- Datenquelle im Gateway einrichten
- in Power BI Service verbinden, Aktualisierungszeitplan festlegen
Wichtig: Benutzerkonto, das den Gateway-Dienst nutzt, braucht Leserechte.
đ ideal, wenn Du automatisierte Dashboards willst.
Variante 6: Access als BI-Datenpumpe via SQL Server
Wenn Access sowieso Frontend ist und SQL Server dahinter:
- Power BI verbindet sich direkt mit dem SQL Server
- Access bleibt auĂen vor
- Du kannst trotzdem in Access Abfragen bauen, die SQL Views fĂŒttern
đ sauberste Lösung bei wachsendem Datenvolumen.
Bonus: BI-Export aus Access triggern
Shell "powershell -ExecutionPolicy Bypass -File C:\BI\Aktualisieren.ps1", vbHide
Oder:
Dim http As Object
Set http = CreateObject("MSXML2.XMLHTTP")
http.Open "POST", "https://api.powerbi.com/.../refreshes", False
http.setRequestHeader "Authorization", "Bearer xyz"
http.Send
đ Damit kannst Du nach einem Update in Access gleich Power BI zur Aktualisierung anstoĂen.
Best Practices
- niemals ganze Tabellen laden â immer vorbereitete Queries
- Feldnamen konsistent und sprechend (
ArtikelID
, nichtID
) - keine Formatierungen oder Strings in Abfragen
- kein Mischmasch aus Access-Abfrage + Excel-Berechnung
- im Zweifel: Rohdaten in CSV exportieren, Power BI macht den Rest
Fazit fĂŒr Entwickler
Access und Power BI verstehen sich â wenn Du ihnen klare Schnittstellen gibst.
Access bereitet vor. Power BI visualisiert.
Wenn Du das sauber trennst, bekommst Du starke Reports â ohne Datenchaos.
Keine Antworten