VBA [basics]: Projekten, Modulen und Klassen verwalten

In einer Access-Datei, also einer Datei mit der Endung .mdb oder .accdb (oder anderen, ähnlichen Endungen für Spezialfälle), finden wir genau ein VBA-Projekt, das zu dieser Datei gehört (es kann noch weitere eingebundene Projekte geben, aber das ist ein fortgeschrittenes Thema). Dieses Projekt enthält Module und Verweise auf einzubindende Bibliotheken. Die Module teilen sich wieder auf in Standardmodule und Klassenmodule. Die Klassenmodule teilen sich auf in alleinstehende Klassenmodule und Klassenmodule, die zu einem Formular oder Bericht gehören. Diese Begriffe schauen wir uns im vorliegenden Artikel an und zeigen, wie wir diese optimal im VBA-Editor verwalten können.

Weiterlesen

VBA [basics]: Einführung in den VBA-Editor

Der VBA-Editor ist die Schaltzentrale für die Programmierung unter VBA. Hier legen Sie Routinen an, schreiben den Code, starten die Ausführung von manchen Routinen zum Debuggen. Bevor wir damit starten, wollen wir allerdings erst einmal die einzelnen Elemente des VBA-Editors vorstellen. Deshalb werfen wir in diesem Artikel einen Blick auf Elemente wie die Menüs und ihre Einträge, die Symbolleisten, das Code-Fenster, den Direktbereich, den Objektkatalog das Lokalfenster, das Überwachungsfenster, die Aufrufe-Liste und das Verweise-Fenster und erläutern kurz, wozu diese dienen. Später werden wir in weiteren Artikel im Detail auf die einzelnen, am meisten verwendeten Elemente eingehen.

Weiterlesen

Tab-Ansicht oder überlappende Fenster

Access bietet langem verschiedene Darstellungsarten für Formulare und für Datenbankobjekte allgemein an. Standardmäßig erscheinen diese Objekte nach dem Öffnen im sogenannten Registerkartenformat. Das mag für den einen oder anderen Einsatz praktisch sein, für andere jedoch nicht. Zum Glück kann man die Anzeige in den Optionen von Access einstellen, sodass sich für jeden Anwendungsfall die passende Konfiguration festlegen lässt. In diesem Artikel zeigen wir, welche verschiedenen Ansichten es gibt und wie wir diese mit den Access-Optionen einstellen können.

Weiterlesen

Tabellen [basics]: Vom Textfeld zum Lookup-Feld

Bei der Datenmodellierung hat man nicht immer alle Aspekte vom ersten Augenblick an im Blick. Es kann passieren, dass Felder nachträglich hinzugefügt werden müssen, dass wir ihren Datentyp ändern wollen oder dass ein Tabellen- oder Feldname noch angepasst werden soll. Es kommt jedoch auch vor, dass wir Daten erst einmal in ein Textfeld schreiben und dann feststellen, dass dieses Textfeld immer wieder die gleichen Daten aufnimmt. In diesem Fall kommt es leicht dazu, dass eigentlich gleiche Werte mit unterschiedlich Schreibweise eingetragen werden. Will man nach diesen Werten filtern und gibt nur eine Schreibweise ein, erhält man nicht alle Datensätze, die man eigentlich sehen möchte. Um dies zu verhindern, kann man solche Textfelder durch Nachschlagefelder ersetzen, die ihre Werte aus Lookup-Tabellen beziehen. So sieht man bei der Eingabe direkt, dass ein Wert bereits vorhanden ist und kann diesen nutzen, statt weitere Schreibweisen hinzuzufügen. Wie wir eine solche Änderung nachträglich durchführen, zeigen wir in diesem Artikel.

Weiterlesen

Tabellen [basics]: Von der 1:n- zur m:n-Beziehung

Bei der Datenmodellierung hat man nicht immer alle Aspekte vom ersten Augenblick an im Blick. Es kann passieren, dass Felder nachträglich hinzugefügt werden müssen, dass wir ihren Datentyp ändern wollen oder dass ein Tabellen- oder Feldname noch angepasst werden soll. Es kommt jedoch auch vor, dass wir eine Beziehung nicht von Anfang an so gestalten, dass sie späteren Praxisanforderungen gerecht wird. In diesem Fall wollen wir uns den Fall anschauen, wo wir eingangs dachten, wir kämen mit einer 1:n-Beziehung aus, aber letztendlich stellte sich heraus, dass eine m:n-Beziehung doch sinnvoller ist. Wir schauen uns in diesem Artikel an, wie wir eine solche Beziehung von 1:n auf m:n umstellen können, damit wir anschließend flexibler Daten zuordnen können.

Weiterlesen

Formulare [basics]: m:n-Beziehung mit Listenfeldern

Im Artikel haben wir uns bereits angesehen, wie man die Daten einer m:n-Beziehung mit Haupt- und Unterformular verwalten kann. Wir wollen nun eine Alternative dazu betrachten, bei der wir die Daten der beiden per m:n-Beziehung verknüpften Tabellen mithilfe zweier Listenfelder anzeigen und verwalten wollen. In diesem Fall schauen wir uns die Daten der Tabellen tblBuecher und tblKategorien an, die über die Tabelle tblBuecherKategorien miteinander verknüpft sind. Wir wollen dazu in einem Formular jeweils einen Buchdatensatz anzeigen in zwei Listenfeldern jeweils die dem Buch zugeordneten Kategorien und die nicht zugeordneten Kategorien. Als Sahnehäubchen fügen wir noch einige VBA-Funktionen hinzu, mit denen wir einem Buch neue Kategorien zuweisen oder diese entfernen können.

Weiterlesen

Formulare [basics]: Bearbeitungsmodus einstellen

Wenn wir ein Access-Formular einfach per Doppelklick oder einen Befehl wie DoCmd.OpenForm öffnen, können wir damit in der Regel alle möglichen Datenoperationen durchführen: Neue Datensätze anlegen und vorhandene Datensätze bearbeiten und löschen. Es kann jedoch auch einmal vorkommen, dass der Benutzer die Daten nur betrachten können soll. Oder er soll ein Formular nur zum Anlegen, nur zum Bearbeiten oder sogar nur zum Löschen nutzen können. Vielleicht benötigen wir auch eine Kombination dieser Aktionen. Für all diese Einsatzzwecke können wir das Formular mit entsprechenden Einstellungen versehen. Welche Eigenschaften dies sind und wie wir sie einstellen, zeigen wir in diesem Artikel.

Weiterlesen

Datenbankobjekte verwalten

Im Navigationsbereich von Access finden wir alle Objekte einer Anwendung, deren Anzeige aktuell aktiviert ist. Neben dem Ribbon ist das die Steuerzentrale für das Verwalten und die Verwendung der Access-Objekte wie Tabellen, Abfragen, Formulare, Berichte, Makros und Module. In diesem Artikel zeigen wir, wie Du den Navigationsbereich effizient für das Verwalten Deiner Datenbankobjekte nutzen kannst. Damit bauen wir auf einem weiteren Artikel zum Thema auf. Unter dem Titel Navigationsbereich und -optionen optimal nutzen (www.access-basics.de/663) zeigen wir die grundlegende Nutzung des Navigationsbereichs.

Weiterlesen

Formulare [basics]: m:n-Beziehung mit Unterformular

Tabellen in einer m:n-Beziehung sind Tabellen, die über eine Verknüpfungstabelle miteinander verknüpft sind, sodass jeder Datensatz der ersten Tabelle mit jedem Datensatz der zweiten Tabelle verknüpft werden kann. Die Verknüpfungstabelle realisiert das mit je einem Fremdschlüsselfeld zum Verknüpfen dieser beiden Tabellen. Wollen wir dies in Formularen darstellen, sodass der Benutzer komfortabel mit den Daten in dieser Beziehungsart arbeiten kann, können wir die Daten in einem Hauptformular mit einem Unterformular darstellen. Auch unter den m:n-Beziehungen gibt es verschiedene Variationen. Wir bilden in diesem Artikel die Variante ab, bei der die m:n-Verknüpfungstabelle neben den eigentlichen Verknüpfungsdaten noch weitere Informationen aufnimmt, die sich auf die jeweilige Kombination der Datensätze der beiden Tabellen beziehen.

Weiterlesen

Navigationsbereich und -optionen optimal nutzen

Der Navigationsbereich ist neben dem Ribbon die Schaltzentrale für die Entwicklung und manchmal auch für die Verwendung einer Access-Datenbank. Während der Entwicklung öffnen wir darüber die Elemente unserer Anwendung in den verschiedenen Ansichten. Wenn wir die Anwendung an einen Benutzer weitergeben, können wir entscheiden, ob wir dem Benutzer den Zugriff über den Navigationsbereich erlauben wollen oder ob wir die Befehle zum Aufrufen der verschiedenen Funktionen der Anwendungen ins Ribbon verlegen wollen. Im ersteren Fall können wir den Navigationsbereich durchaus noch so anpassen, dass der Benutzer nicht durch Hunderte von Objekten navigieren muss, sondern diese übersichtlich präsentiert bekommt. Losgelöst davon zeigen wir in diesem Artikel aber auch die übrigen Funktionen des Navigationsbereichs und schauen uns auch die dafür verfügbaren Optionen an.

Weiterlesen