Aktionsabfragen statt Schleifen

Änderungen an den Daten in den Tabellen einer Datenbank kann man auf verschiedenste Arten durchführen – zum Beispiel über die Benutzeroberfläche. Gelegentlich werden Sie jedoch auch Daten per VBA ändern wollen. In diesem Falle gibt es eine ganze Reihe von Varianten, die normalerweise mit den Methoden der DAO-Bibliotheken abgebildet werden: Das Öffnen eines Recordsets und Ändern der enthaltenen Daten mit AddNew/Edit und Update, das Zusammenstellen einer SQL-Aktionsabfrage, die dann mit der Execute-Methode des Database-Objekts ausgeführt wird, oder der Einsatz gespeicherter Aktionsabfragen, die man mit der Execute-Methode des QueryDef-Objekts startet. Wir schauen uns die verschiedenen Varianten an und optimieren diese.

Weiterlesen

Undo in Haupt- und Unterformular mit Klasse

Das Problem beim Einsatz von Haupt- und Unterformularen mit Daten aus verknüpften Tabellen ist, dass der Benutzer diese als Einheit ansieht. Enthält das Hauptformular eine Abbrechen-Schaltfläche, geht er davon aus, dass er die Änderungen an Daten im Haupt- oder Unterformular damit komplett rückgängig machen kann. Leider ist das nicht so – die Änderungen im Unterformular bleiben gespeichert, und auch die Werte im Hauptformular lassen sich nach dem Speichern etwa durch einen Mausklick auf den Datensatzmarkierer nicht mehr rückgängig machen. Grund genug, unsere bereits einmal beschriebene Technik nochmal unter die Lupe zu nehmen und in eine flexibel einsetzbare Klasse zu exportieren.

Weiterlesen

Bibliotheken und Verweise untersuchen

Wenn Sie Access-Anwendungen programmieren, nutzen Sie verschiedene Bibliotheken wie etwa die VBA-Bibliothek, die Access-Bibliothek, die DAO-Bibliothek et cetera. In diesem Beitrag schauen wir uns an, wie Sie an wichtige Informationen über diese Bibliotheken gelangen und was dies beispielsweise im Hinblick auf das Ermitteln der neuen Features einer neuen Access-Version bedeutet.

Weiterlesen

VBA-Funktionen von A bis Z

VBA-Funktionen kann doch jeder programmieren. Funktionsname, Parameter, Rückgabewert – fertig! Es gibt jedoch eine ganze Menge Feinheiten, die man als Programmierer kennen sollte. Dazu gehört beispielsweise das Zurückgeben mehr als eines Ergebniswertes, das Übergeben beliebig vieler Parameter oder auch optionale Parameter. Dieser Beitrag liefert alles, was Sie für den Umgang mit Funktionen wissen müssen.

Weiterlesen

Datenmodelle vergleichen

Spätestens dann, wenn Sie eine Datenbank zum Kunden geben, gibt es zwei Versionen der gleichen Datenbank. Meist geschieht dies bereits viel früher – zum Beispiel, wenn Sie eine Sicherheitskopie eines bestimmten Entwicklungsstands der Datenbank anfertigen, um ohne Sorge Änderungen vornehmen zu können. Was aber, wenn Sie etwa nach Arbeiten am Datenmodell noch einmal prüfen möchten, wie die Unterschiede zum Datenmodell einer anderen Version der Datenbank aussehen Genau: Dann hilft Ihnen die Lösung aus dem vorliegenden Beitrag weiter.

Datenmodell ändern

Weiterlesen

Multi-Add-Ins

Wer sich einen nützlichen Satz von Access-Add-Ins erstellt oder installiert hat, findet in seinem Add-In-Verzeichnis einige Datenbanken vor. Das muss nicht sein: Sie können auch mehrere Add-Ins in einer einzigen Datenbank anlegen. Dazu müssen Sie lediglich mehrere Sätze von Registry-Informationen in der Tabelle USysRegInfo anlegen und die benötigten Funktionen und Formulare bereithalten.

Weiterlesen

MSAccess.exe und Co.

Access besteht nicht nur aus einer einzigen Anwendungsdatei, sondern auch noch aus einer Reihe weiterer wichtiger Dateien wie etwa den Bibliotheken VBA, DAO oder ADODB oder Add-In-Datenbanken, die Funktionen zu Access hinzufügen. In diesem Beitrag sehen wir uns diese Dateien an und schauen, welche Informationen sich aus diesen gewinnen lassen. Außerdem gibt es eine Reihe VBA-Funktionen, mit denen Sie beispielsweise die Speicherorte dieser Dateien ermitteln können.

Weiterlesen

Parameterabfragen unter der Lupe

Abfragen lassen sich auf unterschiedlichste Weise mit den Vergleichswerten für ihre Kriterien bestücken – beispielsweise, indem man einfach den gewünschten SQL-Ausdruck per VBA zusammensetzt. Es gelingt jedoch unter Einsatz von Abfrageparametern: Sie fügen in eckige Klammern eingefasste Bezeichnungen in den Abfrageentwurf ein und füllen diese dann entweder per eingebauter Inputbox oder per VBA. Dieser Beitrag stellt alle wichtigen Techniken rund um den Einsatz von Parameterabfragen vor.

Weiterlesen

Suchergebnis im Listenfeld markieren

n aus einem Textfeld, das zur Eingabe eines Suchbegriffs dient, und einem Listenfeld, dass die zum jeweiligen Suchbegriff passenden Treffer anzeigt, haben wir bereits einmal in Access im Unternehmen beschrieben. Wenn das Listenfeld nicht allzu viele Einträge aufweist, gibt es noch eine Alternative: Die gefundenen Einträge sollen dabei einfach markiert werden. Dieser Beitrag zeigt, wie es funktioniert.

Weiterlesen

Datenblattmarkierungen

Wenn Sie Formular in der Datenblattansicht anzeigen, bietet die Benutzeroberfläche von Access bereits alles Nötige, um damit zu arbeiten. Alles Nötige Nein: Es gibt noch eine Reihe Dinge, die Sie mit dem Datenblatt anstellen können – zum Beispiel das Auslesen oder Einstellen von Markierungen. Dieser Beitrag zeigt, wie Sie die aktuell markierten Zellen im Datenblatt ermitteln und diese nach Ihren Wünschen einstellen. Außerdem packen wir die dazu notwendige Funktionalität in eine wiederverwendbare Klasse.

Weiterlesen