Zoomen in Access, Teil 2
Im ersten Teil unserer Reihe mit dem Titel »Formulare zoomen in Access« (www.access-im-unternehmen.de/1605) haben wir uns den ersten Wurf von Microsoft zum Zoomen in Formularen angesehen. Hier war das Zoomen noch auf wenige Ansichten beschränkt, aber Microsoft hat nun nachgebessert. Auch haben wir bemängelt, dass es aktuell noch keine Möglichkeit gibt, den Zoomfaktor programmatisch abzufragen. Außerdem gab es nur einige wenige Befehle, mit denen wir bestimmte Zoomfaktoren einstellen konnten. Auch hier liefert die neue Version eine Neuerung, denn wir können den Zoomfaktor nun nicht nur per VBA genau setzen, sondern diesen auch abfragen. Diese und weitere Verbesserungen, die mit den Versionen 2608 und 2609 veröffentlicht wurden, stellen wir in diesem Beitrag vor.
Formulareigenschaften global ändern
Mit »AllowZooming« und »ZoomResizesWindow« hat Microsoft zwei Formulareigenschaften eingeführt, die sich ausschließlich über die Properties-Auflistung ansprechen lassen – und das auch nur, wenn das Formular in der Entwurfsansicht geöffnet ist. Wer diese Eigenschaften für eine gewachsene Anwendung mit einigen Dutzend Formularen einstellen möchte, hat stumpfe Fleißarbeit vor sich. Ein guter Anlass, sich ein Werkzeug zu bauen, das beliebige Eigenschaften für alle Formulare und Berichte einer Anwendung ausliest, sichert und setzt. Dieser Beitrag zeigt, wie das gelingt – und wofür sich so ein Werkzeug jenseits der Zoom-Funktion noch alles einsetzen lässt.
Reguläre Ausdrücke in VBA, Teil 1: Basics
Wer in VBA prüfen will, ob eine Eingabe eine gültige E-Mail-Adresse ist, baut sich meist eine Schleife mit »InStr«, »Mid« und »Left« zusammen – und kämpft dann mit Sonderfällen. Mit regulären Ausdrücken erledigt eine einzige Zeile dieselbe Aufgabe. Das nötige Werkzeug gehört seit vielen Jahren zu Windows, allerdings über eine Bibliothek, die Microsoft gerade abkündigt. Gleichzeitig hat das VBA-Team reagiert und die Funktionalität fest eingebaut. Dieser erste Teil unserer Reihe zeigt, wie Sie das Objekt einbinden, welche Klassen es mitbringt und wie die Mustersprache funktioniert. Der zweite Teil liefert dann fertige Rezepte für den Alltag.
Reguläre Ausdrücke in VBA, Teil 2: Praxis-Rezepte
Im ersten Teil dieser Reihe haben wir das RegExp-Objekt eingebunden, seine vier Klassen kennengelernt und die Mustersprache durchgearbeitet. Nun wird es konkret. Dieser Beitrag liefert fertige Muster für die Prüfung von E-Mail-Adressen, Telefonnummern, Postleitzahlen und Kfz-Kennzeichen, dazu Funktionen zum Herauslösen von Daten aus Freitextfeldern, zum Bereinigen kopierter Texte und zum Füllen von Textvorlagen. Alle Beispiele setzen die drei Hilfsfunktionen aus dem ersten Teil voraus – und am Ende zeigen wir eine Falle, die eine Access-Anwendung zuverlässig zum Stillstand bringt.
Prüfziffern per VBA berechnen und prüfen
Im Beitrag »Reguläre Ausdrücke in VBA, Teil 2: Praxis-Rezepte« (www.access-im-unternehmen.de/1617) haben wir mit einem regulären Ausdruck geprüft, ob eine IBAN formal richtig aufgebaut ist. Das schützt aber nur vor groben Schnitzern – ein Zahlendreher in der Kontonummer geht anstandslos durch. Genau dafür gibt es Prüfziffern: eine oder zwei zusätzliche Stellen, aus den übrigen berechnet, die beim Vertippen fast immer nicht mehr passen. Dieser Beitrag zeigt die Verfahren hinter IBAN, ISBN, GTIN, Kreditkartennummer und Umsatzsteuer-Identifikationsnummer und liefert sie als fertige Funktionen, die Sie in Formularen und Abfragen einsetzen können.
Fehlendes Option Explicit finden und nachrüsten
Zwei Wörter am Anfang eines Moduls ersparen Ihnen Stunden der Fehlersuche: Option Explicit. Wer sie vergisst, bekommt von VBA jeden Tippfehler in einem Variablennamen klaglos als neue Variable durchgewinkt – und einen Fehler, der sich erst Wochen später als falsches Ergebnis zeigt. In gewachsenen Anwendungen fehlt die Anweisung erfahrungsgemäß in einem Teil der Module. Dieser Beitrag zeigt, wie Sie die Lücken per VBA aufspüren und schließen, ohne jedes Modul einzeln zu öffnen.
Rechnen mit Datum und Zeit ohne Überraschungen
Datumsberechnungen wirken harmlos, bis die Abfrage die Datensätze von heute nicht findet, die Kalenderwoche zum Jahreswechsel danebenliegt oder die Summe der Arbeitszeiten plötzlich 07:59 statt 08:00 lautet. Alle drei Fälle haben dieselbe Ursache: Access speichert Datum und Uhrzeit anders, als die angezeigte Darstellung vermuten lässt. Dieser Beitrag zeigt, was dabei schiefgehen kann, und liefert die Funktionen, die Ihnen die üblichen Fallen abnehmen.
VBA-Optionen, die jeder Entwickler kennen muss
Nicht nur Access, sondern auch der VBA-Editor bietet eine Reihe von Optionen an. Diese erlauben, das Aussehen und die Funktionalität des VBA-Editors anzupassen. Es gibt zwar nicht die Fülle von Optionen, die Sie vielleicht von modernen Entwicklungsumgebungen kennen, aber manchmal ist weniger auch mehr. In diesem Beitrag stellen wir die wichtigsten Optionen für den VBA-Editor vor – damit verhindern Sie beispielsweise dauerhaft das Verwenden von nicht deklarierten Variablen, nutzen verschiedene Einstellungen für die Fehlerbehandlung oder deaktivieren nervige Meldungen bei Syntaxfehlern.
