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.
FRAGE Wir arbeiten im Team mit einer gemeinsam genutzten Access-Datenbank im Netzwerk. In einem bestimmten Formuar möchte ich möchte die Bearbeitung eines Memofeldes ausschließlich für mich und meine Kollegin zulassen. Für alle anderen Mitarbeiter soll der Inhalt nur sichtbar und die Bearbeitung zuverlässig gesperrt sein. Haben Sie einen Tipp, wie ich das mkt möglichst wenig Aufwand erreichen kann?
Die Fehlermeldung "Anwendungs- oder objektdefinierter Fehler" ist nicht besonders hilfreich beim Einkreisen von Problemen in VBA-Routinen. Wir zeigen in diesem Tipp, wie Sie mit einer wenig bekannten Funktion weitere Informationen zu dem Problem abfragen können. Eine Ursache für die sehr allgemeine Fehlermeldung ist die Tatsache, dass VBA nicht ausschließlich für den Einsatz mit Access konzipiert ist, sondern auch in Excel, Word, Outlook und PowerPoint zum Einsatz kommt.
Der Aufruf einer Prozedur oder Funktion muss manchmal flexibel mit einer unterschiedlichen Anzahl von Parametern möglich sein. Sie möchten zum Beispiel eine Funktion erstellen, die prüft, ob der in ein Feld eingegebene Begriff in einer Aufzählung von vorgegebenen Begriffen enthalten ist, wobei die Anzahl der vorgegebenen Begriffe variieren kann. Solche Anforderungen lassen sich mit dem Parametertyp "ParamArray" realisieren.
FRAGE Ich verwende in einem Formular meiner Access-Datenbank eine Gruppe von Kontrollkästchen. Für die korrekte Datenerfassung mit möglichst wenig Aufwand soll in Zukunft sichergestellt sein, dass bei neuen Daten oder nach dem Bearbeiten von vorhandenen Datensätzen mindestens ein Kontrollkästchen aktiviert ist. Wie kann ich eine solche Prüfung am einfachsten umsetzen und dann die Speicherung des Datensatzes mit unvollständigen Daten verhindern?
Firmenlogo und Adresse sind typische feste Elemente, die Sie in Ihren Berichten immer wieder verwenden. Bei Änderungen müssen Sie in jedem einzelnen Objekt manuelle Anpassungen vornehmen. Eine mögliche Lösung des Problems wäre der Einsatz von Unterberichten, aber noch effizienter ist der Einsatz von ungebundenen Objektfeldern. Wenig bekannt ist die Tatsache, dass Sie auf diesem Weg externe Dateien einbinden und so verknüpfen können, dass die Anzeige im Objektfeld immer automatisch dem aktuellen Inhalt der Datei entspricht.
FRAGE Ich habe festgestellt, dass das Ereignis "Form_KeyDown" in geteilten Formularen nicht wie gewohnt funktioniert. Geteilte Formulare nutzen wir seit Access 2007. Wenn der Anwender dort beispielsweise die Funktionstasten F6 oder F12 betätigt, werden die Funktionen ausgeführt, die ich hinterlegt habe (Tastenvorschau für das Formular ist auf "Ja" eingestellt). Betätigt der Anwender diese Funktionstasten jedoch in einer neueren Access-Version, werden die Standard-Access-Funktionen ausgeführt. Ich finde keine Möglichkeit, dies zu unterbinden.
In Haupt- oder Unterformularen können Sie die Anzahl der Datensätze normalerweise auf einen Blick in den Navigationsschaltflächen ablesen: Hier befindet sich zwischen den Pfeiltasten ein entsprechendes Textfeld mit einer Information wie "127/387". Häufig nutzen Sie Haupt- oder Unterformulare jedoch ohne Navigationsschaltflächen, so dass Angaben zum Umfang der Datenbasis fehlen. Unser Tipp zeigt, wie Sie diese Information mit wenig Aufwand nachrüsten.
FRAGE Ich nutze ein Formular mit einem Register und mehreren Seiten, z. B. "Gewichtung", "Bewertung", "Maßnahmen", die jeweils ein Unterformular enthalten. Datenänderungen auf der Seite "Gewichtung" müssten durch Klicken auch auf die Seiten "Bewertung" und "Maßnahmen" aktualisierten werden. Gleiches gilt für die anderen Seiten. Dazu verwende ich zum Beispiel für die Seite "Bewertung" im Ereignis "Beim Klicken" ein Makro mit Aktion "AktualisierenDaten". Leider funktioniert das aber nicht. Verwende ich dasselbe Makro mit einem Button, funktioniert das einwandfrei. Da ich über 40 solche Formulare einsetze, hätte das zur Folge, dass ich in jedes Formular einen Button zur Datenaktualisierung einrichten müsste. Gibt es eine Möglichkeit, mit der ich durch Klick auf den "Reiter" der jeweiligen Seite auch eine Datenaktualisierung erreiche?
Um programmatisch auf die Inhalte von Tabellen zuzugreifen, werden "Recordsets" eingesetzt. Ein Recordset ist einfach ausgedrückt eine Sammlung von Datensätzen, die in Schleifen durchlaufen und auf verschiedener Art verarbeitet werden kann. Alle notwendigen Grundlagen dazu vermittelt Ihnen unser Tipp. In den ersten beiden Teilen dieses Tipps haben wir gezeigt, wie Recordsets initialisiert werden, wie man in Recordsets navigiert, in einer Schleife alle Datensätze durchläuft und wie man Recordsets durchsucht. Im Folgenden erläutern wir, wie Sie über Recordsets Feldinhalte ändern und Datensätze hinzufügen oder löschen können.
FRAGE Unsere Access-Anwendung soll so gut wie möglich vor experimentierfreudigen Anwendern geschützt werden. So möchten wir in der Datenbank verhindern, dass Anwender über das Symbol Entwurfsansicht unten rechts in der Statusleiste in die Entwurfsansicht von geöffneten Formularen gelangen. Die Benutzeroberfläche haben wir schon entsprechend angepasst, aber die Statuszeile möchten wir nicht komplett ausschalten. Fällt ihnen dazu eine Lösung ein?
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.