Ticketsystem, Teil 1

Wer Access-Anwendungen entwickelt, erledigt dies in der Regel für seine Kunden oder Benutzer. Ob es nun einer, wenige oder viele Benutzer sind: Früher oder später meldet sich der eine oder andere mit Fehlermeldungen oder Verbesserungswünschen. Davon ausgehend, dass Sie diese auch berücksichtigen möchten, ist hier ein funktionierendes System zur Erfassung und Abarbeitung der Anforderungen gefragt, gegebenenfalls auch für mehrere Benutzer. Wir gehen in diesem Fall von einer reinen E-Mail-Schnittstelle aus und wollen dazu Microsoft Outlook nutzen.

Windows-API per VBA nutzen

Access stellt ausreichend Bordmittel zur Programmierung von Datenbankanwendungen zur Verfügung. Dazu gehören die Benutzerschnittstellen zur Gestaltung der Datenbankobjekte wie Tabellen, Abfragen, Formulare und Berichte sowie die Möglichkeit, Abläufe ereignisgesteuert per Makro oder VBA zu automatisieren. Manchmal reichen die vorhandenen Befehle aber nicht aus. In dem Fall greifen Sie auf die Prozeduren der Windows-API (Application Programming Interface) zu. Mit API-Prozeduren können Sie Ihre Anwendungen alles machen lassen, was Windows auch kann.

Standardverzeichnisse per VBA ermitteln

Es gibt eine ganze Reihe von Verzeichnissen, die es auf jedem Rechner gibt. Manche davon sollten eigentlich immer gleich lauten, aber durch die Installation von Windows oder Software auf Laufwerken mit anderen Laufwerkbuchstaben als C: gibt es hier gelegentlich Unterschiede. In manchen Fällen sorgt auch die Betriebssystemversion für Unterschiede, beispielsweise bei 32bit- gegenüber 64bit-Systemen. Und ganz sicher unterscheiden sich die Verzeichnisse, die dem jeweiligen Benutzer gehören. Dennoch wollen Sie früher oder später einmal dynamisch auf ein bestimmtes Verzeichnis zugreifen wie etwa das Verzeichnis der eigenen Dateien eines Benutzers oder das Add-In-Verzeichnis von Access. Dieser Beitrag zeigt, wie Sie solche Verzeichnisse ermitteln.

Benutzerdefinierte Outlook-Eigenschaften

Wenn Sie Outlook mit automatischen Funktionen ausstatten, die einen Zugriff auf eine Datenbankanwendung erfordern (in unserem Fall meist auf eine Access-Datenbank), dann müssen Sie irgendwo den Pfad der Datenbankdatei hinterlegen. Dies könnte man vorübergehend statisch in einem Code-Modul erledigen, aber für professionelle Anwendungszwecke sollte dieser Pfad nicht nur geändert werden können, sondern auch an einem anderen Ort gespeichert werden.

HTML-Liste mit Access-Daten

Die Datenblatt-Ansicht und das Endlosformular sind gute Helfer, wenn es um die Anzeige mehrerer Datensätze einer Tabelle oder Abfrage geht. Allerdings haben beide einen gravierenden Nachteil: Sie zeigen alle Datensätze immer in der gleichen Höhe an. Wenn also ein Datensatz etwa eine Notiz enthält, die nur eine Zeile lang ist, eine andere aber zehn Zeilen, müssen Sie die Formularhöhe nach dem längsten Inhalt auslegen. Dadurch verlieren Sie wiederum eine Menge Platz, da die Höhe ja auch für kurze Inhalte beansprucht wird. Dieser Beitrag zeigt, wie Sie das Problem mithilfe von HTML und dem Webbrowser-Steuerelement beheben.

Standardwerte per bedingter Formatierung

Es geschieht gelegentlich, dass Sie einen Standardwert aus mehreren Werten festlegen müssen – beispielsweise, wenn ein Benutzer mehrere E-Mail-Adressen hat, Sie aber eine davon als Standardadresse für ausgehende Mails definieren möchten. Wenn die E-Mail-Adressen in einem Unterformular in der Datenblattansicht angezeigt werden, bietet sich die bedingte Formatierung an, um die jeweils aktive E-Mail-Adresse zu markieren. Wie dies aussehen kann, zeigt der vorliegende Beitrag.

Markierung automatisch kopieren

Manchmal möchten Sie vielleicht schnell den kompletten Inhalt oder auch Ausschnitte von einem Textfeld in ein anderes übernehmen. Dann markieren Sie diesen, kopieren ihn, beispielsweise mit der Tastenkombinatino Strg + C, und fügen ihn mit Strg + V in das Zieltextfeld ein. Das ist für den Alltag schnell genug, so Sie denn die Tastenkombinationen aus dem Stegreif beherrschen (das ist längst nicht immer der Fall!). Wenn Sie jedoch häufiger Inhalte von Textfeld A nach Textfeld B übertragen wollen, gibt es einen viel eleganteren Weg. Schauen Sie selbst!

Textfelder mit flexibler Höhe

Es ist seit jeher ein Wunsch der Access-Entwickler, Steuerelemente zum Beispiel dynamisch an die Größe des umgebenden Formulars anzupassen. Microsoft hat dem Rechnung getragen, indem es mit der Version 2007 die beiden Eigenschaften »Horizontaler Anker« und »Vertikaler Anker« für Steuerelemente hinzugefügt hat. Damit lässt sich allerdings immer nur ein Steuerelement in der horizontalen und der vertikalen Ebene in der Größe anpassen – doch was ist, wenn das Formular mehrere Steuerelemente besitzt, die abwechselnd größer dargestellt werden sollen? Dieser Beitrag zeigt, wie dies gelingt.

CSV-Verknüpfungen pflegen

Wenn Sie Dateien im .csv-Format in Ihre Datenbank eingebunden haben, kommt es gelegentlich vor, dass diese verschoben, umbenannt oder gelöscht werden. Dieser Beitrag zeigt nicht nur, wie Sie .csv-Dateien per VBA einbinden können, sondern auch, wie Sie erkennen, ob die Dateien noch an Ort und Stelle sind und diese gegebenenfalls mithilfe des Benutzers wieder einbinden.
Aktuell im Blog
Listenfeld: Reihenfolge mehrerer Einträge...

Wir haben bereits in mehreren Beiträgen beschrieben, wie Sie die individuelle Reihenfolge von... [mehr]

Diagramme mit gefilterten Daten

In Ausgabe 2/2019 haben wir in zwei Artikeln die modernen Diagramme von Access vorgestellt. Im... [mehr]

Benutzerverwaltung mit verschlüsselten...

Wenn Sie in einer Access-Anwendung Benutzer verwalten wollen, die sich per Benutzername und... [mehr]

HTML-Tabellen mit fester Kopfzeile

In den vorherigen Ausgaben von Access im Unternehmen und in der aktuellen Ausgabe arbeiten wir in... [mehr]

Flexible HTML-Tabellen mit fester Kopfzeile

Im Beitrag »HTML-Tabellen mit fester Kopfzeile« haben wir gezeigt, wie Sie Daten aus einer... [mehr]

Berechtigungen per HTML verwalten

Im Beitrag »Benutzerverwaltung mit verschlüsselten Kennwörtern« stellen wir eine Lösung vor, in... [mehr]

Benutzer und Berechtigungen ermitteln

In den Beiträgen »Benutzerverwaltung mit verschlüsselten Kennwörtern« und »Berechtigungen per... [mehr]

Zugriffsrechte mit Datenmakros

Es gibt verschiedene Möglichkeiten, auf Basis des aktuell angemeldeten Benutzers sicherzustellen,... [mehr]

Kennwörter generieren

Für den einen oder anderen Zweck möchten Sie vielleicht Kennwörter generieren oder in einer... [mehr]

Neuer Datensatz von Frontend zu Backend

Für manche Themen gibt es keine kurze, prägnante Überschrift. In diesem Fall wollen wir zeigen,... [mehr]