Bestellposition per Datenmakro ergänzen

Bestellpositionen speichern wir in einer eigenen Tabelle beispielsweise namens tblBe-stellpositionen, die als m:n-Verknüpfungstabelle zwischen Tabellen wie tblBestellungen und tblProdukte dient. Diese Tabelle nimmt dann jeweils noch Felder auf wie Einzelpreis, Mehrwertsteuersatz und Einheit, die wir aus der Produkte-Tabelle in die Bestellpositionen-Tabelle kopieren. Damit das automatisch beim Anlegen einer Bestellposition geschieht, fügen wir normalerweise ein Ereignis zum Eingabeformular für die Bestellpositionen hinzu, das diese Daten ausliest und in die Bestellposition einträgt. Es gibt jedoch noch eine Alternative: Dabei verwenden wir ein Datenmakro, das durch das Ereignis “Vor Änderung” des Datensatzes ausgelöst wird und verlegen die Logik damit in die Tabelle selbst. Wie das gelingt, zeigt der vorliegende Beitrag.

Weiterlesen

E-Mail-Adressen validieren per VBA

Immer mehr Vorgänge werden per E-Mail verarbeitet. Dazu gehören auch Bestellungen, Rechnungen et cetera. Früher wurden beispielsweise Rechnungen an die Postadresse geschickt, was einigermaßen fehlertolerant war. Spätestens der Briefträger hat die falsche Hausnummer erkannt und die Sendung dank regelmäßigem Zustellungsgebiet beim richtigen Adressaten abgeliefert. Bei E-Mails verhält sich dies völlig anders: Hier führt jede Ungenauigkeit zur Unzustellbarkeit, toleriert werden allenfalls noch Abweichungen bei der Groß-/Kleinschreibung. Daher lohnt es sich, die E-Mail-Adressen von Kunden und anderen Adressaten zumindest oberflächlich zu prüfen.

Weiterlesen

Nummern für Bestellungen et cetera generieren

In vielen Beispieltabellen, die wir in diesem Magazin vorstellen, verwenden wir einfach das Primärschlüsselfeld als Kundennummer, Bestellnummer und so weiter. In manchen Fällen ist das nicht praktikabel, weil diese Nummern nach bestimmten anderen Regeln erstellt werden müssen. Dann bietet es sich an, dennoch ein Primärschlüsselfeld mit Autowertfunktion zu nutzen, um die Datensätze eindeutig zu identifizieren und dieses auch für das Herstellen von Beziehungen zu nutzen. Die Kundennummern oder Bestellnummern möchte man aber dennoch nicht von Hand eingeben, sondern die Datenbank soll das erledigen. Wie Sie das realisieren können, zeigt der vorliegende Beitrag.

Weiterlesen

Textfeld nur mit bestimmten Zeichen füllen

Manche Felder in Tabellen dürfen nur bestimmte Zeichen aufnehmen. So soll beispielsweise eine Postleitzahl nur aus Zahlen bestehen, Namen sollen keine Zahlen enthalten, Telefonnummern nur Zahlen und bestimmte Zeichen wie Plus, Minus und Klammern. Um dies durchzusetzen, gibt es verschiedene Möglichkeiten. Die einfachste ist, nach der Eingabe zu prüfen, ob das Feld nur die zulässigen Zeichen enthält und den Benutzer darauf hinzuweisen. Man könnte aber auch direkt bei der Eingabe nur die zulässigen Zeichen akzeptieren. Dabei gibt es jedoch einige Fallstricke. In diesem Beitrag schauen wir uns die verschiedenen Möglichkeiten an.

Weiterlesen

Code beim Öffnen der Anwendung: Formular

Wenn Sie Code beim Öffnen einer Access-Datenbank ausführen wollen, gibt es zwar keine direkte Möglichkeit wie etwa ein Ereignis wie beim Öffnen eines Formulars. Es gibt allerdings verschiedene Techniken, mit denen Sie dennoch den Zeitpunkt des Öffnens der Anwendung abfangen und dabei VBA-Code ausführen können. Bisher nutzte man hier vornehmlich die Möglichkeit über das Makro namens AutoExec und das Startformular, aber es gibt noch eine weitere Möglichkeit: Nämlich über ein benutzerdefiniertes Ribbon. Im vorliegenden Beitrag zeigen wir, wie Sie über das als Startformular definierte Formular VBA-Code ausführen können.

Weiterlesen

Code beim Öffnen der Anwendung: Ribbon

Wenn Sie Code beim Öffnen einer Access-Datenbank ausführen wollen, gibt es zwar keine direkte Möglichkeit wie etwa ein Ereignis wie beim Öffnen eines Formulars. Es gibt allerdings verschiedene Techniken, mit denen Sie dennoch den Zeitpunkt des Öffnens der Anwendung abfangen und dabei VBA-Code ausführen können. Bisher nutzte man hier vornehmlich die Möglichkeit über das Makro namens AutoExec und das Startformular, aber es gibt noch eine weitere Möglichkeit: Nämlich über ein benutzerdefiniertes Ribbon. Im vorliegenden Beitrag zeigen wir, wie Sie eine VBA-Funktion beim Starten unter Verwendung des Ribbons aufrufen können.

Weiterlesen

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