Beispiel für den automatischen Eintrag eines Hyperlinks in Access
No comment
Über den Umgang mit Hyperlink-Datentypen und -feldern hatte ich mich ja schon hier ausgelassen. Daher möchte ich an dieser Stelle ein kleines Beispiel für ein Formular einfügen, in welchem man mit dem Klick auf die entsprechende Textbox ,,Ordner“ den Hyperlink bequem erzeugt oder ändert.
Das Formular sieht beispielsweise so aus:
Mit einem Klick auf das Textfeld Ordner, welches mit der Tabellenspalte des Hyperlink-Datentyps verbunden ist, soll dann folgende Routine ausgelöst werden.
Und hier kommt der entsprechend zu hinterlegende VBA Code:
Private Sub Ordner_Click() 'Definiere einen Ordner für Unternehmen und den allgemeinen Pfad für Ordner Dim Ordnername As String Dim Ordnerpfad As String Dim Hyperlinkadresse As String Dim Hyperlinkname As String 'Variablen für die Fragebox nach dem Ordner definieren Dim Meldung As String Dim Stil As Variant Dim Titel As String Dim Antwort As Variant 'Ordnername ist der Inhalt des Textfeldes "Unternehmen" oder die Bitte ein Unternehmen einzutragen 'Der Name des Hyperlinks ist der Gleiche wie der Unternehmensname Me!Unternehmen.SetFocus If Unternehmen.Text = "" Then Ordnername = "Unternehmensname" Hyperlinkname = "Unternehmensname" Unternehmen.Value = Ordnername Else Ordnername = Unternehmen.Value Hyperlinkname = Unternehmen.Value End If Me!Ordner.SetFocus 'Standardpfad für Ordner Ordnerpfad = "D:\deinPfad\deinOrdner" 'Der Hyperlink hat eine Adresse die aus Ordnerpfad und Ordnername zusammengesetzt ist Hyperlinkadresse = Ordnerpfad & Ordnername 'Meldung definieren. Meldung = "Neuen Ordner anlegen?" 'Schaltflächen definieren Stil = vbYesNo + vbQuestion 'Titel definieren. Titel = "Anlegen und/oder Auswahl eines Ordners" On Error GoTo ErrHandler 'Prüft das Hyperlinkfeld auf Inhalt, wenn nicht Dialog anzeigen If Ordner.Text = "" Then 'Fragebox anzeigen aus der ein Anlegen oder Auswählen des Ordners hervorgehen soll Antwort = MsgBox(Meldung, Stil, Titel) 'Benutzer hat "Ja" gewählt If Antwort = vbYes Then ' Ordner im Ordnerpfad anlegen, Hyperlink in der Textbox Ordner erstellen und Ordner öffnen MkDir Hyperlinkadresse Ordner.Value = Hyperlinkname & "#" & Hyperlinkadresse Shell "explorer.exe " & Hyperlinkadresse, vbNormalFocus ' Benutzer hat "Nein" gewählt Else 'Fokus setzen und Hyperlinkauswahlmenü Me!Ordner.SetFocus Application.RunCommand (acCmdInsertHyperlink) End If 'Fehlerbehandlung ErrHandler: On Error Resume Next Else 'Fokus setzen und Öffnen Me!Ordner.SetFocus End If End Sub
Wenn alles vernünftig eingebaut ist, sollte beim Klicken auf das leere Textfeld folgendes erscheinen: