Access - wie kann man per VBA einen Datei-Pfad (PDF-Datei) in ein Hyperlink-Feld schreiben?
Hallo ich habe ein Problem damit einen Pfad (inkl. Dateinamen) in ein Hyperlink-Feld zu schreiben, so dass man die Datei später durch einen einfachen Klick auf das Feld öffnen kann.
Dim strCurrentSQL As String
strCurrentSQL = "UPDATE tbl_Bewerbungen " & _
"SET tbl_Bewerbungen.gedruckt = -1, tbl_Bewerbungen.Anschreiben = " & Chr(34) & "'" & strTargetFile & "'" & Chr(34) & " " & _
"WHERE ID = " & varRecordSetID(I) & _
"AND gedruckt = 0;"
strRecordSource = Me.RecordSource ' Speichern der Datenbankverbindung in einer Variablen
Me.RecordSource = "" ' Trennen der Datenbank-Anbindug zur Vermeidung von Schreibkonflikten
DoCmd.SetWarnings False ' Warnungen abschalten
DoCmd.RunSQL (strCurrentSQL) ' SQL-Anweisungen zur Aktualisiertung des Druckstatus
DoCmd.SetWarnings True ' Warnungen wieder aktivieren
Me.RecordSource = strRecordSource ' Wiederherstellung der Datenbankanbindung
Mein VBA-Code schreibt zwar den Pfad + Dateinamen in das Feld aber man kann später nicht einfach in dem dazugehörigen Formular drauf klicken um die Datei zu öffnen.
Wenn ich im Dateisystem mit Shift und Rechtsklick auf die Datei klicke, um den Pfad zu kopieren und diesen dann von Hand einfüge, dann funktioniert der Link.
Ich vermute es hat etwas mit den Hochkommata zu tun - hat jemand eine Idee was ich falsch mache?
1 Antwort
OK - inzwischen habe ich den Fehler selber gefunden. Hyperlinks benötigen am Anfang und am Ende je eine Raute - so funktioniert es jetzt:
Dim strCurrentSQL As String
strCurrentSQL = "UPDATE tbl_Bewerbungen " & _
"SET tbl_Bewerbungen.gedruckt = -1, tbl_Bewerbungen.Anschreiben = " & Chr(34) & "#" & strTargetFile & "#" & Chr(34) & " " & _
"WHERE ID = " & varRecordSetID(I) & _
"AND gedruckt = 0;"
strRecordSource = Me.RecordSource ' Speichern der Datenbankverbindung in einer Variablen
Me.RecordSource = "" ' Trennen der Datenbank-Anbindug zur Vermeidung von Schreibkonflikten
DoCmd.SetWarnings False ' Warnungen abschalten
DoCmd.RunSQL (strCurrentSQL) ' SQL-Anweisungen zur Aktualisiertung des Druckstatus
DoCmd.SetWarnings True ' Warnungen wieder aktivieren
Me.RecordSource = strRecordSource ' Wiederherstellung der Datenbankanbindung