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 Ich nutze ein Formular mit einem Unterformular und möchte nun per VBA die Datensätze aus beiden Formularen kopieren. Das funktioniert auch, aber es kann natürlich vorkommen, dass das Unterformular mehr als einen Datensatz hat. Ich suche nun nach einer Möglichkeit, das Unterformular programmatisch anzusprechen und es den nächsten Datensatz positionieren. Am sinnvollsten würde ich in einer Schleife immer aller Datensätze nacheinander durchlaufen. Wie muss ich dazu vorgehen?
Die Eigenschaft Tabledefs(<Tabelle>).Connect wird in vielen Datenbanken verwendet, um zum Beispiel den Connection-String von Pass-Through-Abfragen zu definieren. Nach dem Microsoft 365-Update auf die Version 2312 im aktuellen Kanal (Current Channel) am 4.1.2024 funktionierten mit einem Schlag plötzlich die meisten Datenbanken mit einem SQL Server-Backend nicht mehr. Der Grund: die .Connect-Eigenschaft verschluckte einfach das erste Semikolon im Connection-String, so dass zum Beispiel aus "ODBC;DSN" plötzlich "ODBCDSN" wird. Der Bug wurde inzwischen von Microsoft behoben.
In Ihren Datenbanken verwenden Sie regelmäßig Memofelder, in denen Informationen zeilenweise abgelegt sind. Wenn Sie den Inhalt eines solchen Memofeldes sortieren möchten, finden Sie dazu in Access oder VBA keine Unterstützung. Ähnliches gilt für Listenfelder, die Sie per "AddItem" aus einem Array aufbauen oder für Kombinationsfelder, bei denen Sie aus einem Array eine Werteliste zusammensetzen und zuweisen möchten. Auch für diese Steuerelemente suchen Sie vergeblich nach einer Sortierfunktion. In diesem zweiteiligen Tipp stellen wir eine Lösung vor, die Sie zukünftig für alle Sortieraufgaben in Ihren Datenbanken heranziehen können.
FRAGE Aus einem Listenfeld (Listbox) mit den Feldern "Kundennummer" (Autowert, bei der Eingabe gesetzt) und "Kundenname", ca. 100 Einträge, möchte ich durch Anklicken des Kundennamens diesen Namen in den Report "Daten des Kunden" übertragen. Hinter diesem Report steht eine Abfrage gleichen Namens, die in dem Feld "Kundenname" als Kriterium "[Kundenname].[Name]" hat. Bei normalem Aufruf des Reports erscheint ein Fenster, in dem nach dem Kundenamen gefragt wird. Diese zusätzliche Eingabe möchte ich vermeiden, und durch das Anklicken aus dem Listenfeld ersetzen.
Bei der Entwicklung von Datenbanken werden oft SQL-Anweisungen eingesetzt - beispielsweise per VBA und "DoCmd.RunSQL" oder "CurrentDb.Execute". In vielen Fällen bietet es sich an, zunächst eine "normale" Abfrage zu entwerfen, und die SQL-Entsprechung dann in den VBA-Editor zu übernehmen. Genau diese Aufgabe nimmt Ihnen in Zukunft das kostenlose SmartTools SQL aus Abfragen 5.1 ab. Nach dem Aufruf zeigt das Add-In zu jeder Abfrage Ihrer Datenbank automatisch die zugehörige SQL-Anweisung, die Sie dann per Mausklick fertig formatiert in Ihr VBA-Modul übernehmen.
In Access können Sie in der Datenblattansicht von Tabellen standardmäßig Felder per Kontextmenü hinzufügen, löschen oder umbenennen oder Nachschlagefelder einrichten/entfernen. Diese Funktionen sollten weniger erfahrenen Anwendern nicht unbedingt zur Verfügung stehen, damit sie keine Änderungen an Tabellenstrukturen vornehmen können. Unser Tipp: Über wenig bekannte Einstellungen in den Access-Optionen können Sie diese Komntextmenüs schnell deaktivieren.
Bei der Entwicklung von Datenbanken werden oft SQL-Anweisungen eingesetzt - beispielsweise per VBA und "DoCmd.RunSQL" oder "CurrentDb.Execute". In vielen Fällen bietet es sich an, zunächst eine "normale" Abfrage zu entwerfen, und die SQL-Entsprechung dann in den VBA-Editor zu übernehmen. Genau diese Aufgabe nimmt Ihnen in Zukunft das kostenlose SmartTools SQL aus Abfragen 5.1 ab. Nach dem Aufruf zeigt das Add-In zu jeder Abfrage Ihrer Datenbank automatisch die zugehörige SQL-Anweisung, die Sie dann per Mausklick fertig formatiert in Ihr VBA-Modul übernehmen.
Bei der täglichen Arbeit mit Datenbanken sind schnell mehrere Formulare zur Bearbeitung von Daten und Berichte zur Kontrolle in der Seitenvorschau gleichzeitig geöffnet und man findet nichts mehr wieder. Ordnung schaffen Sie mit einer VBA-Prozedur, die wir in diesem Tipp vorstellen. Sie bauen die Lösung in Ihre Formulare ein und mit einem Mausklick werden alle Formulare bis auf das geschlossen, aus dem Sie die Prozedur aufgerufen haben.
FRAGE Damit das Hauptformular übersichtlich bleibt, habe ich eine Befehlsschaltfläche angelegt, mit dem ein Unterformular mit Detaildaten aufgerufen wird. Die Anzeige der Daten funktioniert zwar einwandfrei, aber es lassen sich keine neuen Datensätze hinzufügen. Wenn dasselbe Unterformular im Hauptformular eingebettet ist, funktioniert auch das Hinzufügen von neuen Datensätzen. Haben Sie eine Lösung?
Sammeln auch Sie seit Jahren Ihre Office-Dateien in denselben Verzeichnissen auf Ihrer Festplatte? Werden die Listen immer länger und wird es zunehmend schwerer, etwas zu finden? Der neue SmartTools Archivierungs-Assistent 2024 hilft Ihnen beim Aufräumen Ihrer Festplatte! Der SmartTools Archivierungs-Assistent ist ein Komplettpaket zur Archivierung von Office-Dateien von Access, Word, Excel und PowerPoint (jeweils in den Versionen 365, 2021, 2019, 2016, 2013 und 2010). Sie können den Archivierungs-Assistenten beispielsweise dazu nutzen, Datenbanken, Dokumente, Arbeitsmappen und Präsentationen, auf die Sie nicht mehr regelmäßig zugreifen müssen, in Unterordner nach Jahren und Monaten sortiert zu verschieben und so die Übersicht in den Ordnern für die tägliche Arbeit drastisch zu erhöhen.
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.