Code beim Schließen der Anwendung ausführen

Beim Öffnen einer Access-Anwendung haben Sie verschiedene Möglichkeiten, Code auszuführen – Sie können ein Formular anzeigen, das beim Öffnen Code ausführt, das AutoExec-Makro nutzen, um eine Prozedur aufzurufen oder sogar das Ribbon dafür instrumentalisieren. Wenn es jedoch um Code geht, der beim Beenden der Anwendung ausgeführt werden soll, finden wir keine offiziell dafür vorgesehene Technik. Allerdings gibt es einen Trick, um doch noch VBA-Code auszuführen, wenn die Access-Anwendung durch den Benutzer geschlossen wird.

Weiterlesen

Emulation im Webbrowser-Steuerelement einstellen

Wenn Sie das Webbrowser-Steuerelement nutzen, wird üblicherweise der Internet Explorer emuliert. Für viele Anwendungen ist das jedoch wenig hilfreich, denn sie funktionieren nur mit neueren Versionen des Internet Explorers oder auch nur noch mit Microsoft Edge. Dieser Beitrag zeigt, wie Sie einstellen, welche Version des Microsoft-Browsers im Webbrowser-Steuerelement angezeigt wird – und Sie erfahren auch, wie sie herausfinden, welchen Browser das Steuerelement gerade anzeigt.

Weiterlesen

Benutzeroberfläche für CDO-Serienmails

Im Beitrag “Serienmails mit CDO” haben wir einige Prozeduren und Funktionen vorgestellt, mit denen Sie Serien-E-Mails über die CDO-Bibliothek von Windows versenden können. Das macht natürlich nur halbsoviel Spaß, wenn nur die nackten Routinen vorliegen. Also zeigen wir im vorliegenden Beitrag auch noch, wie Sie eine praktische Benutzeroberfläche zum Verwalten der für den Versand einer Serienmail benötigten Daten programmieren.

Weiterlesen

Zuletzt verwendete Datensätze im Ribbon

Im Beitrag “Zuletzt verwendete Datensätze per Listenfeld” zeige wir, wie Sie die zuletzt in einem Formular angezeigten Kundendatensätze in einem Listenfeld aufführen können, um diese schnell wieder zu öffnen. Vielleicht haben Sie im Formular zur Kundenverwaltung aber keinen Platz für diese Liste oder Sie möchten diese einfach immer verfügbar haben. Dann bietet sich das Ribbon als Ort für diese Liste an. Im vorliegenden Beitrag zeigen wir, wie Sie das Ribbon um ein Steuerelement zur Anzeige und Auswahl der zuletzt verwendeten Datensätze erweitern.

Weiterlesen

E-Mails versenden mit CDO

Für das Versenden von E-Mails von einer Access-Anwendung aus gibt es verschiedene Möglichkeiten. Die naheliegendste ist der Versand unter Verwendung von Outlook, da dieses üblicherweise auf Rechnern mit Microsoft Access installiert ist. Es gibt jedoch auch Fälle, bei denen kein Office-Paket vorliegt und wo eine alternative Lösung gefragt ist. Früher gab es die Bibliothek vbSendmail, die auch heute noch eingeschränkt funktioniert. Eingeschränkt deshalb, weil beispielsweise SSL nicht unterstützt wird. Also haben wir nach einer Alternative gesucht, die auch modernere, sichere Versender unterstützt und sind dabei auf eine eher betagte Lösung gestoßen: die Bibliothek CDO, die auf jedem Windows-System installiert ist.

Weiterlesen

Serienmails versenden mit CDO

Zum Verwenden von Serienmails nutzt man meist Outlook und schreibt eine Mail an sich selbst, während man die Empfänger dann möglichst dem Feld BCC hinzufügt. Auf diese Weise bleibt der Datenschutz gewahrt, denn Sie wollen ja nicht jedem Empfänger die E-Mail-Adressen aller anderen Empfänger der Serienmail mitteilen. Der Nachteil ist, dass Sie so noch nicht einmal einfache Individualisierungen realisieren können wie etwa eine persönliche Anrede. Wenn Sie das erledigen wollen, versenden Sie per Automation aus einer Datenbank Nachrichten über Outlook. Falls das nicht in Frage kommt, weil beispielsweise Outlook nicht auf dem Rechner installiert ist, können Sie noch eine Alternative nutzen, nämlich die Bibliothek CDO. Im Beitrag “E-Mails mit CDO” haben wir bereits die grundlegenden Techniken zum Versenden von E-Mails mit dieser Bibliothek vorgestellt. Nun gehen wir einen Schritt weiter und zeigen, wie das auch noch für Serienmails gelingt.

Weiterlesen

Steuerelemente per VBA erstellen

Im Beitrag “Formulare per VBA erstellen” (www.access-im-unternehmen.de/1332) haben wir gezeigt, wie Sie per VBA ein neues, leeres Formular erstellen und seine Eigenschaften einstellen. Darauf wollen wir in diesem Beitrag aufbauen und zeigen, wie Sie dem Formular per VBA die gewünschten Steuerelemente hinzufügen können. Und auch Steuerelemente haben eine Menge Eigenschaften, die wir nach dem Anlegen einstellen müssen – Position, Aussehen und auch wieder Ereigniseigenschaften. Nach der Lektüre des vorliegenden Beitrags haben Sie alle Werkzeuge, die Sie brauchen, um beispielsweise Access-Add-Ins zu nutzen, um einer Anwendung neue Formulare und Steuerelemente hinzuzufügen.

Weiterlesen

E-Mails mit Anlagen mit Outlook versenden

Das Versenden von E-Mails haben wir bereits ausführlich in Access im Unternehmen beschrieben. Dort kam auch gelegentlich das Thema auf, wie Sie Dateien an solche E-Mails anhängen. Allerdings gibt es bei genauerem Hinsehen Anforderungen, die wir noch nicht behandelt haben – zum Beispiel das Anhängen vieler Dateien auf einen Rutsch oder auch das Hinzufügen von Dateien, die nicht aus einem Verzeichnis stammen. Hierzu sind dann mehrere Aufrufe des jeweiligen Dialog zum Auswählen der Dateien erforderlich. Auf diese Spezialfälle gehen wir im vorliegenden Beitrag ein.

Weiterlesen

Dateien und Verzeichnisse auswählen mit FileDialog

Bereits seit einiger Zeit bietet die Office-Bibliothek das FileDialog-Objekt an. In früheren Versionen gab es dort einige Einschränkungen, weshalb Programmierer gern auf Alternativen zurückgegriffen haben wie etwa die entsprechenden Funktionen der Windows-API oder auch die der nicht dokumentierten WizHook-Klasse. Irgendwann hat Microsoft jedoch auch für Access alle Funktionen der FileDialog-Klasse freigeschaltet, unter anderem auch das Auswählen von zu speichernden Dateien. Daher schauen wir uns in diesem Beitrag einmal an, welche Möglichkeiten die FileDialog-Klasse nun bietet und ob wir diese für unsere Zwecke nutzen können.

Weiterlesen

Datenzugriff mit .NET, LINQPad und LINQ to DB

.NET bietet eine ganze Menge Möglichkeiten, die uns unter Access/VBA nicht zur Verfügung stehen. Und diese Möglichkeiten wachsen ständig weiter, denn Entwickler stellen ihre eigenen Erweiterungen auf der NuGet-Plattform zur Verfügung. Was haben wir als Access-Entwickler nun davon Mittlerweile gibt es Bibliotheken wie LINQ to DB, mit denen Sie leicht von einer .NET-Anwendung auf Access-Datenbanken zugreifen können. Und es gibt mit LINQPad eine Benutzeroberfläche, mit denen Sie einfache Prozeduren mit Visual Basic programmieren können, ohne Visual Studio zu benötigen. Wir wollen diese beiden Tools als Vorbereitung zu einem weiteren Beitrag vorstellen. Dort werden wir diese nutzen, um die Tabellen einer Access-Datenbank mit zufälligen Beispieldaten zu füllen.

Weiterlesen