Tipps "n" Tricks
Anwender-Software - Access

Last Update: 24. Dezember 2001/Webmaster

Eingabefeld für E-Mail-Adressen einrichten

Thema:

Access 97/2000
  Zu den Angaben, die in keiner Adressenliste fehlen dürfen, gehört mittlerweile die E-Mail-Adresse einer Person. In einer computergestützten Datenbank die Mail-Anschrift aber einfach nur als Text abzulegen, wäre nicht angemessen. Wirklich effektiv ist es, gleich einen Link einzufügen, der per Mausklick das E-Mail-Programm mit der passenden Empfängeradresse startet.

Für diese Zwecke bestens geeignet ist in Access der Datentyp "Hyperlink", den Sie einem Tabellenfeld zuweisen können. Allerdings hat die Sache einen Haken, denn standardmässig erwartet Access in einem solchen Feld die Eingabe einer WWW-Adresse, also einen Link auf eine Seite im World Wide Web. Mit Hilfe eines Formulars und ein paar Zeilen VBA-Code können Sie Access aber auch veranlassen, zum Mail-Programm zu verzweigen.

Zur Veranschaulichung stellen Sie das folgende Beispiel nach. Es arbeitet mit einer simplen Tabelle, die nur die Felder "Name" und "Email" enthält. Die Eingabe erfolgt in einem Formular, welches den Text im Email-Feld automatisch in einen Mail-Link umwandelt.

Beginnen Sie also damit, eine neue Tabelle mit den Feldern "Name" und "Email" anzulegen. Im Entwurfsmodus weisen Sie dem Feld "Email" den Felddatentyp "Hyperlink" zu. "Name" ist ein einfaches Textfeld. Nachdem Sie den Tabellenentwurf gespeichert haben, lassen Sie mit der Symbolleistenschaltfläche Neues Objekt: Autoformular ein Standardformular generieren.

Sobald das fertige Formular auf dem Bildschirm erscheint, füllen Sie die beiden Eingabefelder mit beliebigen Beispieldaten. Anhand der Unterstreichung sowie der Farbgebung erkennen Sie sofort, dass Access den Inhalt des E-Mail-Feldes als Link betrachtet. Wenn Sie mit der Maus darauf zeigen, - ohne zu klicken, - sehen Sie aber auch, dass die Verknüpfung falsch ist: Access 97 zeigt die vollständige Adresse in der Statusleiste an, Access 2000 blendet nach kurzer Zeit eine Infobox neben dem Mauszeiger ein. So wird zum Beispiel aus einer Adresseingabe wie "l.schmitz@t-online.de" der Hyperlink "http://l.schmitz@t-online.de". Damit beim Anklicken Ihr E-Mail-Programm gestartet wird, müsste der Link "mailto:l.schmitz@t-online.de" lauten.

Noch etwas detailreicher wird es, wenn Sie sich mit der Tastatur in das Feld mit der E-Mail-Adresse bewegen und dann die Taste F2 drücken. Bei genauer Durchsicht mit Hilfe der Richtungstasten werden Sie feststellen, dass der Feldinhalt aus mehreren Teilen besteht, die durch #-Zeichen getrennt sind. Grund dafür ist, dass Access Hyperlink-Felder aus einem Anzeigetext, dem eigentlichen Link inklusive Übertragungsprotokoll und gegebenenfalls einer Unteradresse (ist hier leer) zusammensetzt.

Den korrekten Mail-Link erhalten Sie nun, indem Sie per VBA-Code "http://" gegen "mailto:" austauschen. Diese Aktion lassen Sie in einer Ereignisprozedur jedesmal dann ausführen, wenn ein neuer Wert in das Feld "Email" eingegeben wurde.

Konkret schalten Sie hier zunächst in den Entwurfsmodus des Formulars. Dann rufen Sie das Menü Ansicht-Code auf, um in das zugehörige Codefenster zu wechseln. Dort geben Sie eine Prozedur für das AfterUpdate-Ereignis des Feldes "Email" ein, und zwar mit folgendem Inhalt:

Private Sub EMail_AfterUpdate()
Dim strAnzeige

  strAnzeige = HyperlinkPart(Me.EMail, acDisplayedValue)
  Me.EMail = strAnzeige & "#mailto:" & strAnzeige & "#"

End Sub

In der Variablen "strAnzeige" speichern Sie zunächst nur den Anzeigetext, also das, was Sie selbst als E-Mail-Adresse eingegeben haben. Danach setzen Sie den Wert des E-Mail-Feldes neu zusammen, wobei Sie das gewünschte Protokoll "mailto:" einfügen.

Jetzt müssen Sie das Formular nur noch speichern und bereits eingegebene Adressen noch einmal neu erfassen (die VBA-Prozedur wirkt sich ausschliesslich auf neue Einträge aus). Wenn Sie dann mit der Maus auf eine Mail-Anschrift zeigen, sehen Sie, dass Access mit "mailto:" arbeitet, und beim Anklicken wird sich wie gewünscht das Mail-Programm öffnen.

 

Tipps "n" Tricks
Anwender-Software - Access