Blog

Suche
Peter Rühm

Peter Rühm

Wird Access noch benötigt?(#02) – Als Frontend

„Wozu benötigen wir eigentlich ACCESS noch?“ werde ich oft gefragt und frage mich das auch immer wieder selbst. Dann entwickelt sich meist das folgende Selbstgespräch:

Na, zum strukturierten Speichern von Daten natürlich! Datenbank eben. Das haben wir hier im BLOG ja schon diskutiert…

Ja, aber EXCEL kann doch auch speichern und ist viel leichter zu bedienen.  

Das stimmt, aber man kann nicht so viele Zeilen speichern, es ist weniger performant, nicht organisiert und stabil, weder relational noch redundanz-arm, von Positionsunabhängigkeit und struktureller Flexibilität ganz zu schweigen! Und die Performance ist in jedem Fall noch schlechter, wenn durch das Herunterkopierern vieler SVERWEISE ineffizient gearbeitet wird!


OK, aber was ist dann mit Power Query? Das ist auch relational, flott, stabil. Und SVERWEISE nehme ich da auch keine!

Gerne, aber wie sieht es mit der Historisierung von Daten aus. Stichworte Zeitstempel, Monatsscheibe etc. Stellen wir uns mal vor, dass jeden Monat neu Daten hereinkommen und mit einer Art Stempel versehen werden, damit der Verlauf über die Zeit dokumentiert werden kann.

Okay, das kann ich auch mit einer EXCEL-Datei pro Monat lösen. Über Ordner Auslesen in Power Query lassen sich die prima untereinander setzten. Aus dem Speicherdatum generiere ich mir dann den Zeitstempel. 

Ja, sicher geht das. Nur werden dann jeden Monat zu den wirklich neuen Daten auch immer die Alt-Daten eingelesen und aufbereitet, die ja schon aufbereitet waren und sich nicht mehr geändert hatten! Diese Aktualisierung kostet regelmäßig Zeit und ist redundante Arbeit.

Aber wie sieht es mit der Aufbereitung der Daten beim Import aus? Kann Access denn genauso gute Aufbereitungsschritte umsetzen wie Power Query und auch die vielfältigen Quellen anzapfen?

Erwischt! Da hat nun wirklich EXCEL mit Power Query die Nase vorne.

Ende des Selbstgesprächs…


Datenaufbereitung mit EXCEL bzw. Power Query vs. ACCESS

Die Aufbereitung „hässlicher“ Textdateien oder von CSV-Dateien mit Zwischenzeilen, mehrzeiligen Datensätzen oder Pivot-Strukturen, die de-pivotiert werden sollen… alles dann kann Power Query wie ich so schön sage: mit einer Hand an der Maus und der anderen an der Kaffeetasse! Also recht einfach, ohne Programmierung und Makro- oder VBA-Code .

Power Query für ACCESS

Daher hatte ich bei Microsoft schon den Vorschlag eingebracht, ACCESS um die Fähigkeiten von Power Query zu ergänzen. Auf access.USERVOICE.com hört Microsoft sehr auf die Vorschläge der User im Praxisbetrieb. (Update 2022: Uservoice wurde deaktiviert und ersetzt durch Feedback · Community (microsoft.com)

Die Vorschläge können dort auch bewertet werden… Dank der starken Community der Access-Entwickler-Konferenz (AEK) und der Promotion durch den Veranstalter Karl Donaubauer wurde der Vorschlag auch zum bestbewerteten, die Gruppe dort je hatte! Die Aufmerksamkeit von Microsoft war geweckt, doch leider wurde entschieden: no current plan. Also: wird nicht implementiert. Begründung: man wolle keine Konkurrenz zu Excel aufbauen.

Ich sehe hier aber keine Konkurrenz, eher eine sinnvolle Ergänzung.

Wollte man keine Konkurrenz, dürfte Excel kein Diagramm erzeugen, sondern müsste das PowerPoint überlassen, Access sollte keine Pivots erzeugen, sondern nur Excel, das dafür aber auch keine intelligenten Tabellen haben dürfte (und keinen SVERWEIS).

Ich sehe eher, dass eine schon entwickelte Technik es ermöglichen würden, den Import – wohlgemerkt nicht die dynamische Anbindung – von Daten zu erleichtern. Diese würden dann in ACCESS gespeichert. Bei meinem Vortrag auf der AEK 2017 habe ich auch dahingehend argumentiert und große Zustimmung erhalten. Da aber bis dato keine Reaktion von Microsoft zu meinem Vorschlag in Sicht war, habe ich eine Interimslösung präsentiert: Daten nach Excel importiert via Power Query, dann diese Tabelle in ACCESS eingebunden, regelmäßig per VAB aktualisiert und das Ergebnis per Anfüge-Abfrage in ACCESS final gespeichert.

powerquery-in-access.png

Diese Lösung ist nunmehr die einzig machbare und ich werde sie in einem späteren Beitrag einmal detailliert darstellen.

Power Query oder das „alte“ Microsoft Query kommen dann natürlich wieder zum Einsatz, wenn die Daten zur Auswertung, Verdichtung, Visualisierung nach EXCEL übergeben werden.

Der Datenimport kann natürlich auch in eine andere, eventuell serverbasierte Datenbank wie SQL-Server oder AZURE-Datenbanken erfolgen, falls das aus Platz-, Performance- oder Berechtigungsgründen erforderlich ist, aber Frontend für die Steuerung und Automatisierung der Importe oder Datenerfassung bleibt bei mir stets gerne ACCESS. Nicht für die Analyse! Da kommen EXCEL und Power BI zum Einsatz.

An dieser Stelle möchte ich nicht die enorme Flexibilität und Leistungsfähigkeit von ACCESS bei der Anwendungs- oder Frontendentwicklung diskutieren – mir geht es primär um die reine Datenaufbereitung und Speicherung von Daten, die in anderen Systemen erzeugt wurden und für Reporting- oder Analysezwecke gesammelt werden sollen.

Fazit „Wozu benötigen wir noch ACCESS?“

Gerne verwende ich Power Query mit Excel allein, falls das ausreicht. Bei der Anforderung nach Historisierung, bei größeren Datenmengen, bei Forderung von Redundanzfreiheit und Inkonsistenz-Vermeidung, für manuelle Datenerfassung oder auch nur beim Wunsch einer „schönen“ Benutzeroberfläche für unerfahrene Anwender greife ich stets gern auf Access zurück.

Wenn Power Query & Co. (z.B. Power Pivot) ausreichen: nicht unbedingt! Falls Performance, Datenmenge und Historisierung erforderlich sind, empfehle ich eine Datenbank zur Speicherung: gerne ACCESS. Falls es noch größer und schneller werden muss: SQL-Server, AZURE & Co.

Die Connection zur Auswertung in Excel erfolgt dann gerne mittels Power Query oder gleich Power BI, das auch Power Query enthält.





Print Friendly, PDF & Email

Beitrag teilen:

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Up to date bleiben

Melden Sie sich für unseren Newsletter an!