Unsere Webseiten benötigen JavaScript. Dies scheint in Ihrem Browser jedoch deaktiviert zu sein.
Unsere Webseiten benötigen Session-Cookies. Diese scheint Ihr Browser jedoch zu blockieren.
News & Tipps zu Microsoft Access
Lesen Sie hier einige der besten Beiträge aus SmartTools Access Weekly sowie ausgewählte Inhalte anderer E-Mail-Newsletter von SmartTools Publishing rund um Microsoft Access.
Manchmal müssen Sie Datensätze nicht nur innerhalb der aktuellen Datenbank mit einem eindeutigen Primärschlüssel verwalten. Wenn Datenbanken beispielsweise in mehreren Filialen eingesetzt und übergreifende, eindeutige Ordnungsbegriffe verlangt werden, scheiden AutoWerte aus, da sie standardmäßig von "1" bis "n" hochgezählt werden und somit nicht in jeder Datenbank eindeutig sind. Helfen können hier sogenannte "GUIDs" (Global Unique Identifier Groups, Globale eindeutige Identifizierungsgruppen wie "482658DC-14E4-4FBF-AD5E4D877737AE31"). Leider lassen sich solche Felder nicht im Tabellenentwurf einrichten, aber mit unserem Tipp kommen Sie dennoch zum Ziel.
FRAGE Ich möchte per VBA auf eine andere Access-Datenbank zugreifen. Konkret soll unter bestimmten Bedingungen eine Tabelle in einer anderen Datenbank entfernt werden. Mit welchem Befehl kann ich also Tabellen aus Datenbank "A" in Datenbank "B" löschen? Die Anweisung DoCmd.DeleteObject acTable, "Name" bezieht sich leider immer nur auf die aktuelle Datenbank und stellt keinen Parameter zur Adressierung einer externen Datenbank bereit.
In Ihren Datenbanken verwenden Sie Makros beispielsweise für den Datenimport. Wenn bei der Ausführung die angegebene Datei nicht gefunden werden kann, bricht das Makro mit einer wenig aussagekräftigen Fehlermeldung ab. Eine Fehlerbehandlung mit eigenen, aussagekräftigeren Fehlermeldungen ist in Makros aber nur unzureichend realisierbar. Sie können zwar mit der Aktion "BeiFehler" das Verhalten im Falle eines Fehlers mit den Optionen "Nächstes" (Fehler ignorieren), "Makro" (anderes Makro aufrufen) oder "Fehlgeschlagen" (Standardmeldung "Makrofehler" anzeigen) kontrollieren, aber auch diese Möglichkeiten reichen nur in wenigen Fällen aus, da Sie zum Beispiel nicht festlegen können, wie es nach dem Aufruf eines anderen Makros weitergehen soll. Deshalb greifen wir zu einem Trick.
FRAGE Ich nutze in einem Formular ein mehrspaltiges Kombinationsfeld, das auf einer Abfrage basiert. Die erste Spalte entspricht dem Primärschlüssel "Kundennummer" der dem Formular zugrunde liegenden Datenbasis. Nach Auswahl eines Eintrages im Kombinationsfeld sollen im Formular nur die Datensätze zum entsprechenden Kunden angezeigt werden. Außerdem möchte ich nach der Auswahl die 2., 3., und 4. Spalte der Auswahl in drei Feldern im Formular anzeigen lassen.
Bereits im Juni 2022 hat Microsoft die Unterstützung des Internet Explorers komplett eingestellt. Das alte Webbrowser-Steuerelement von Access nutzt die HTML-Engine des Internet Explorers, aber damals hat Microsoft versichert, dass das Ende des Internet Explorers nicht das Ende des Webbrowser-Steuerelements bedeutet. Die HTML-Engine namens "Trident" sollte noch mindestens bis 2029 unterstützt werden. So sollten alle Access-Entwickler ausreichend Zeit haben, ihre Anwendungen auf das neue auf Edge basierende Steuerelement umzustellen. Vollkommen überraschend hat Microsoft diese Zusage jetzt zurückgezogen. Nach Angaben des Access-Teams wird das alte Webbrowser-Steuerelement bereits nach Juni 2026 nicht mehr funktionieren.
Mit der Funktionen "Auswahlbasierter Filter" oder "Auswahlausschließender Filter" können Sie die Datensätze eines Formulars gemäß dem Inhalt des aktuellen Feldes filtern. Befinden Sie sich also beispielsweise in einem Feld "Land" mit der Einstellung "Frankreich" und aktivieren den auswahlbasierten Filter (Ist gleich, Ist ungleich, Enthält, Enthält nicht), werden nur noch die passenden Datensätze angezeigt. Analog dazu werden bei "Auswahlausschließender Filter" alle Datensätze angezeigt, bei denen das Feld "Land" einen anderen Inhalt als "Frankreich" hat. Nachdem Sie einige Zeit in den Datensätzen geblättert und Änderungen vorgenommen haben, ist allerdings schnell vergessen, nach welchem Feld die Filterung ursprünglich erfolgt ist. Unser Tipp zeigt, wie Sie als Gedächtnisstütze eine farbliche Hervorhebung des Feldes Filterkriteriums realisieren können.
FRAGE Es gibt immer wieder Situationen, in denen ich Informationen aus meiner Access-Datenbank nach Word übernehmen möchte. In einem Formular soll nun zum Beispiel per Klick auf eine Schaltfläche der Text aus dem Memofeld des aktuellen Datensatzes an der aktuellen Cursor-Position in das gerade geöffnete Word-Dokumente eingefügt werden können. Wie lässt sich seine solche Funktion per VBA realisieren?
Zum Abschluss der Entwicklung Ihrer Datenbankanwendungen müssen Sie alle Funktionen intensiv prüfen. Für den Test von Anwendungen, die mit Datumsangaben wie beispielsweise Geburtstagen arbeiten, sind dazu normalerweise Dutzende oder Hunderte von Geburtstagen, Lieferterminen oder anderen Datumsangaben einzugeben. Unser Tipp stellt eine Funktion vor, mit der sich diese Aufgabe über VBA-Routinen bzw. Aktualisierungsabfragen weitgehend automatisieren lässt.
FRAGE Ich gebe in meiner Accesss-Datenbank Informationen für die Anwender per "MsgBox" aus. In einigen Fällen handelt es sich dabei um längere Texte. Das führt leider dazu, dass eine sehr unübersichtliche, textlastige Meldungsbox angezeigt wird. Ich möchte die Lesbarkeit deutlich verbessern. Gibt es zum Beispiel eine Möglichkeit, die Breite der Meldungsbox und damit die Länge der Zeilen oder deren Umbruch zu beeinflussen?
Viele Berichte erstellen Sie nur für die Ausgabe am Bildschirm, um sich beispielsweise schnell eine Lagerbestandsübersicht anzeigen zu lassen. Bei der Arbeit mit diesen Auswertungen wäre es hilfreich, Detaildaten zu einem Artikel oder zu einem Kunden abrufen zu können. In älteren Versionen scheiterte das daran, dass in Berichten zwar Schaltflächen oder andere Steuerelemente eingefügt, aber keine entsprechenden Ereignisprozeduren verwendet werden konnten. Das hat sich seit einigen Versionen geändert, so dass nun auch in Berichten Steuerelemente mit Ereignisprozeduren oder Makros eingesetzt werden können. Unser Tipp erläutert die Umsetzung einer entsprechenden Lösung.
Dieses Blog präsentiert Inhalte aus den E-Mail-Newslettern von SmartTools Publishing. Premium-Beiträge, die mit [S+] gekennzeichnet sind, sind Newsletter-Abonnenten vorbehalten.
Jetzt Abonnent werden
Falls Sie SmartTools Access Weekly noch nicht abonniert haben, können Sie sich jetzt anmelden – kostenlos und innerhalb weniger Minuten! Sie erhalten dann umgehend ein Passwort, das alle Premium-Beiträge für Sie freischaltet.
[S+] Inhalte freischalten
Wenn Sie SmartTools Access Weekly bereits beziehen, geben Sie hier Ihr Abonnenten-Passwort ein, um alle Premium-Beiträge freizuschalten:
Tipp: Sie finden das gültige Passwort immer am Ende der neuesten Ausgabe Ihres Newsletters.