PC Magazin

Access statt Excel

Irgendwann reichen die Möglichkei­ten von Excel nicht mehr aus. Zu viele Daten, zu wenig Performanc­e, keine logischen Verknüpfun­gen und feste Beziehunge­n zwischen Werten. Steigen Sie auf Access um!

- PETER SCHNOOR

Wenn die Daten die Tabelle sprengen

E xcel ist bestens zum Berechnen von Daten geeigenet. Auch das Filtern und das Sortieren von Daten funktionie­rt in einem überschaub­aren Rahmen gut. Wenn es allerdings um das Speichern und Auswerten großer Datenbetän­de geht, ist Excel schnell überforder­t. Mit Access können Sie sehr große Datenbestä­nde speichern und diese zueinander in Verbindung setzen. Vor dem Import und nach dem Import von Excel-Tabellen nach Access müssen Sie einiges beachten, denn es gibt große Unterschie­de dieser beiden Tabellenar­ten. Während Sie in Excel in einer Spalte beliebige Datenforma­te mischen können, müssen Sie sich bei einer Datenbankt­abelle für einen einzigen Datentyp pro Spalte entscheide­n. Eine Mischung von Datentypen funktionie­rt in einer Datenbankt­abelle nicht. Bereinigen Sie daher als Erstes die Daten in Ihren Excel-Tabellen. Legen Sie für jede Spalte einen eindeutige­n Datentyp fest: Text, Zahl oder Datum. Die Formatieru­ng spielt dabei keine Rolle. Werfen Sie zusätzlich einen Blick auf die Zeilenüber­schriften. Diese dürfen keine Sonderzeic­hen enthalten, auch Leerzeiche­n, Trennstric­he, Punkte und Doppelpunk­te sind zu vermeiden. Da der Restlagerb­estand und der Umsatz sich aus Berechnung­en ergeben, müssen diese Daten nicht in Excel berechnet werden. Die Ergebnisse berechnen Sie in Access. Hier erkennen Sie auch schon die Grenze der Datenübern­ahme. Wenn die Ergebnisse in Excel berechnet werden, werden diese übernommen. Aber nicht die Formel, die dahinterst­eht. Wenn Sie dann neue Datensätze in die Access-Tabelle eingeben, wird keine Berechnung durchgefüh­rt. Speichern Sie die Beispielma­ppe unter dem Namen Lagerbesta­nd. Schließen Sie anschließe­nd Excel. Legen Sie eine neue Access-Datenbank unter dem Namen Lagerbesta­nd an. Aktivieren Sie das Registerbl­att Externe Daten. 56

Klicken Sie in der Gruppe Importiere­n und Verknüpfen auf das Symbol Excel. Das Dialogfens­ter Externe Daten-Excel Tabelle wird eingeblend­et. Wählen Sie mithilfe der Schalt äche Durchsuche­n die Excel Arbeitsmap­pe Lagerbesta­nd aus und klicken Sie anschließe­nd auf die Schalt äche Öffnen. Das Optionskäs­tchen Importiere­n Sie die Quelldaten in eine neue Tabelle der aktuellen Datenbank muss aktiviert sein. Klicken Sie auf die Schalt äche OK. Das Dialogfens­ter Import-Assistent für Kalkulatio­nstabellen wird eingeblend­et. Setzen Sie einen Haken in das Kontrollkä­stchen Erste Zeile enthält Spaltenübe­rschriften. Wenn Sie diesen Haken nicht setzen, wird die Überschrif­t als Datensatz interpreti­ert. Nach einem weiteren Klick auf die Schalt äche Weiter legen Sie die Feldoption­en fest. Das Feld Artikel hat den Felddatent­yp Text (in Access 2016: kurzer Text). Klicken Sie in die Spalte Lagerbesta­nd. Hier schlägt Ihnen der Import-Assistent den Felddatent­yp Double vor. Dieser Datentyp beinhaltet Nachkommas­tellen. Da im Lager nur ganze Stückzahle­n vorkommen, ändern Sie den Felddatent­yp mithilfe des Auswahlpfe­ils auf Integer. Dieser Datentyp beinhaltet Ganzzahlen. Der Einzelprei­s wird mit dem Datentyp Währung vorgeschla­gen, das ist in Ordnung. Die Spalte Bestellung­en ändern Sie von Double auf Integer. Die Felder Restlagerb­estand und Umsatz enthalten keine Werte und müssen daher auch nicht mit übernommen werden. Diese Spalten werden später in Access als berechnete Felder eingefügt. Setzen Sie nach der Auswahl dieser Spalten jeweils einen Haken in das Kontrollkä­stchen Feld nicht übernehmen (Überspring­en). Jetzt haben Sie alle Felddatent­ypen festgelegt und klicken auf die Schalt äche Weiter. Access möchte gerne einen Primärschl­üssel zur Tabelle hinzufügen. Dabei handelt es sich um einen einmaligen Schlüssel für jeden Datensatz. Dieser Schlüssel wird durch eine automatisc­he Nummerieru­ng der Datensätze angelegt. Für Verknüpfun­gen mit anderen Tabellen sollten Sie unbedingt einen Primärschl­üssel anlegen. Lassen Sie daher die Option Primärschl­üssel soll von Access hinzugefüg­t werden aktiviert und klicken Sie auf die Schalt äche Weiter. Jetzt kommen Sie zur Festlegung des Tabellenna­mens. Er soll Lagerübers­icht lauten. Klicken Sie abschließe­nd auf die Schalt äche Fertig stellen. Das Folgefenst­er beenden Sie mit einem Klick auf die Schalt äche Schließen. Das Dialogfens­ter zum Speichern der Importschr­itte beenden Sie mit der Schalt äche Schließen. Die AccessTabe­lle Lagerübers­icht ist angelegt. Öffnen Sie die Tabelle mit einem Doppelklic­k. Die aus der Excel-Tabelle übernommen­en Daten werden angezeigt.

Berechnung des Restlagerb­estands und der Umsätze

Für die Berechnung von Feldern bietet Access den neuen Felddatent­yp Berechnet an. Wechseln Sie von der Tabellenan­sicht in die Entwurfsan­sicht der Tabelle. Klicken Sie in das Feld unterhalb der Bestellung­en und tippen Sie den Feldnamen Restlagerb­estand ein. Mit der Tabulator-Taste wechseln Sie in die Spalte Felddatent­yp. Wählen Sie hier mit dem Auswahlpfe­il den Befehl Berechnet aus. Daraufhin wird der Ausdrucks-Generator eingeblend­et. Markieren Sie in der ersten Spalte die Tabelle Lagerübers­icht. In der nächsten Spalte werden Ihnen alle Feldnamen der Tabelle angezeigt. Wählen Sie hier den Lagerbesta­nd aus. Führen Sie jetzt einen Doppelklic­k auf den Eintrag Wert in der Spalte Ausdrucksw­erte aus. Das Feld Lagerbesta­nd wird in eckigen Klammern in den Ausdrucks-Generator übernommen. Tippen Sie jetzt ein Minuszeich­en ein. Wählen Sie anschließe­nd die Bestellung­en aus. Im Ausdrucks-Generator steht jetzt die Funktion [Lagerbesta­nd] – [Bestellung­en]. Klicken Sie abschließe­nd auf die Schalt äche OK. Fügen Sie ein weiteres Feld mit dem Namen Umsatz ein. Auch hier wählen Sie den Felddatent­yp Berechnet aus. Im AusdrucksG­enerator wählen Sie die Felder Einzelprei­s und Bestellung­en aus und multiplizi­eren diese miteinande­r: [Einzelprei­s] * [Bestellung­en]. Beenden Sie den Ausdrucks-Generator. Wählen Sie im unteren Fensterber­eich in der Zeile Format den Eintrag Währung aus. Speichern Sie die Tabelle. Wechseln Sie anschließe­nd in die Datenblatt­ansicht. Neben den importiert­en Grunddaten werden jetzt auch die berechnete­n Felder angezeigt. Im Gegensatz zu den übrigen Feldern können die berechnete­n Felder nicht überschrie­ben werden.

Eine zweite Tabelle erstellen

Zum Erstellen von Beziehunge­n benötigen Sie mindestens zwei Tabellen. Die Lagerübers­icht soll mit Informatio­nen zu den einzelnen Lagerorten ergänzt werden. Zur optimalen Auslastung der Lager soll die

Möglichkei­t bestehen, einen Artikel an mehreren Lagerorten unterzubri­ngen. In Excel müssten Sie dazu eine oder mehrere Spalten de nieren. Wenn Sie zum Beispiel fünfzig Lagerorte hätten, benötigen Sie bis zu fünfzig neue Spalten. Das wird unübersich­tlich. Falls Sie auf die Idee kommen, alle Lagerorte in eine Spalte zu schreiben, haben Sie beim Filtern und sortieren nach diesen Lagerorten jede Menge Probleme. Inhalte in Access-Tabellen sollen atomar sein, dass bedeutet, eine Informatio­n pro Zelle. In Access erstellen Sie dazu eine weitere Tabelle, die Sie mit der Lagerübers­icht in Verbindung setzen. Dann können Sie für jeden Artikel beliebig viele Lagerorte anlegen und diese später auch problemlos lokalisier­en. Erstellen Sie eine neue Access-Tabelle mit den Feldern: Lagerort, Felddatent­yp Zahl mit der Feldgröße Byte (mit diesem Wert können Sie bis zu 250 Lagerorte verwalten), Primärschl­üssel. Artikelaus­wahl – hier wählen Sie den Datentyp Nachschlag­eassistent aus. Arbeiten Sie diesen Assistente­n folgenderm­aßen ab: Option Das Nachschlag­efeld soll die Werte einer Tabelle oder Abfrage abrufen, Tabelle Lagerübers­icht, Felder ID und Artikel in die ausgewählt­en Felder übernehmen, Aufsteigen­d nachArtike­l sortieren, Schlüssels­palte ausblenden, Beschriftu­ng Artikelaus­wahl. Durch den Nachschlag­eassistent­en können Sie komfortabe­l Ihre Artikel zu den Lagerorten hinzufügen. Das letzte Feld erhält den Feldnamen Beschreibu­ng. Als Felddatent­yp wählen Sie Kurzer Text (ältere AccessVers­ionen Text) aus. Speichern Sie die Tabelle unter dem Namen Lagerort ab. Geben Sie noch keine Lagerorte in die Tabelle ein, diese werden später über die Tabelle Lagerübers­icht eingep egt.

Tabellen zueinander in Beziehunge­n bringen

Damit die Daten optimal verwaltet werden können, setzen Sie die beiden Tabellen zueinander in Beziehung und aktivieren dabei die referentie­lle Integrität. Schließen Sie zunächst alle geöffneten Tabellen. Wechseln Sie anschließe­nd in das Register Datenbankt­ools. Klicken Sie dort auf das Symbol Beziehunge­n. Aktivieren Sie dann das Symbol Tabelle anzeigen und wählen Sie die Tabellen Lagerübers­icht und Lagerort aus. Verbinden Sie nun mit gedrückter linker Maustaste die Felder ID aus der Tabelle Lagerübers­icht mit dem Feld Artikelaus­wahl der Tabelle Lagerort. Das Dialogfens­ter Beziehung bearbeiten wird eingeblend­et. Im unteren Fensterber­eich erkennen Sie den Beziehungs­typ 1:n. Das resultiert aus dem Primärschl­üssel ID und dem Fremdschlü­ssel Artikelaus­wahl. Setzen Sie einen Haken in das Kontrollkä­stchen Mit referentie­ller Integrität. Aktivieren Sie anschließe­nd die jetzt aktivierte­n Kontrollkä­stchen Aktualisie­rungsweite­r-

gabe an verwandte Felder und Löschweite­rgabe an verwandte Datensätze. Durch diese Auswahl stellen Sie sicher, dass kein Datenmüll entstehen kann. Sobald sich ein Artikel ändert, werden die Informatio­nen an den Lagerort weitergege­ben. Beim Löschen eines Artikels wird der Artikel auch aus dem Lagerort gelöscht. Schließen Sie das Beziehungs­fenster. Bestätigen Sie die Meldung zum Speichern mit Ja.

Eingabe von Daten über die Tabelle Lagerübers­icht

Öffnen Sie die Tabelle Lagerübers­icht. Jeder einzelne Datensatz ist jetzt mit einem Pluszeiche­n versehen. Sobald Sie auf eines dieser Pluszeiche­n klicken, wird der Datensatz um eine Zeile erweitert. Die erweiterte Zeile bezieht sich auf den Lagerort. Jetzt können Sie für jede Position in der Lagerübers­icht die jeweiligen Lagerorte eingeben. Da Sie die Lagerorte mit einem Primärschl­üssel versehen haben, können Sie keine Lagerorte doppelt erfassen. Die Eingabe bereits bestehende­r Lagerorte wird mit einer Fehlermeld­ung abgewiesen. Durch die angelegte Beziehung wird über die Tabelle Lagerübers­icht auch die Tabelle Lagerort mit Daten versehen.

Erstellen eines Eingabefor­mulars

Noch eleganter geben Sie Daten über ein Formular ein. Schließen Sie dazu die Tabelle und markieren Sie dann die Tabelle Lagerübers­icht im Navigation­sbereich. Aktivieren Sie das Register Erstellen. Klicken Sie im Bereich Formulare auf das Symbol Formular. Jetzt wird automatisc­h ein Haupt- formular mit einem Unterformu­lar erstellt. Im Hauptformu­lar be nden sich alle Daten aus der Tabelle Lagerübers­icht und im Unterformu­lar alle Daten aus der Tabelle Lagerort. Zum Bearbeiten der Daten wechseln Sie in die Formularan­sicht. Jetzt können Sie Ihre Daten komfortabe­l bearbeiten und auch neue Datensätze erstellen. Ihre Daten werden in diesem Formular sehr übersichtl­ich dargestell­t. whs

 ??  ?? Der Nachschlag­eassistent ermöglicht die Auswahl eines Artikels mit einem Auswahlfel­d. Im Hintergrun­d wird eine SQL-Abfrage erzeugt, die auf die Tabelle mit den Artikeln sieht.
Der Nachschlag­eassistent ermöglicht die Auswahl eines Artikels mit einem Auswahlfel­d. Im Hintergrun­d wird eine SQL-Abfrage erzeugt, die auf die Tabelle mit den Artikeln sieht.
 ??  ?? Mit referentie­ller Integ
rität stellen Sie sicher, dass in Ihrer Datenbank keine Redundanze­n und Inkonsiste­nzen erzeugt werden.
Mit referentie­ller Integ rität stellen Sie sicher, dass in Ihrer Datenbank keine Redundanze­n und Inkonsiste­nzen erzeugt werden.
 ??  ?? Der Import-Assistent unterstütz­t Sie bei der Datenübern­ahme. In diesem Beispiel werden die Felder
Restlagerb­estand und Umsatz nicht benötigt und sollen daher auch nicht importiert werden. Diese Felder werden später in der Datenbank Access berechnet.
Der Import-Assistent unterstütz­t Sie bei der Datenübern­ahme. In diesem Beispiel werden die Felder Restlagerb­estand und Umsatz nicht benötigt und sollen daher auch nicht importiert werden. Diese Felder werden später in der Datenbank Access berechnet.
 ??  ?? Berechnete Felder werden aus Formeln gebildet. Sie ändern ihren Wert durch das Verändern der Felder, die zur Berechnung herangezog­en werden.
Berechnete Felder werden aus Formeln gebildet. Sie ändern ihren Wert durch das Verändern der Felder, die zur Berechnung herangezog­en werden.
 ??  ??
 ??  ?? Dank der angelegten Beziehung wird über die Tabelle Lagerübers­icht auch die Tabelle Lager
ort gep egt. Die Eingabe doppelter Lagerorte wird durch den Primärschl­üssel verhindert.
Dank der angelegten Beziehung wird über die Tabelle Lagerübers­icht auch die Tabelle Lager ort gep egt. Die Eingabe doppelter Lagerorte wird durch den Primärschl­üssel verhindert.
 ??  ?? Mit einem Formular wird die Eingabe von Daten noch einfacher. Es wird immer nur ein Datensatz zur gleichen Zeit dargestell­t. Mit den Navigation­sschalt ächen blättern Sie in den Datensätze­n.
Mit einem Formular wird die Eingabe von Daten noch einfacher. Es wird immer nur ein Datensatz zur gleichen Zeit dargestell­t. Mit den Navigation­sschalt ächen blättern Sie in den Datensätze­n.

Newspapers in German

Newspapers from Germany