Hyperlink to pdf on local drive


(I raised this last week and never fully resolved it).

1. I have a form with a hyperlink in it.

2. I then use the form to enter a link to a local pdf file.

3. After this I click on the link and the pdf should open.

In the database attached.
Please use the form to insert a PDF file from your local drive onto the hyperlink.

Then save the record, and then see if you can click on the hyperlink.
Can you get the pdf to open. (Same applies with other formats)

Why can't I open my pdf when I click on the link?

PS: The VBA was supplied by an expert and ALMOST does exactly what I want.
Patrick O'DeaAsked:
Who is Participating?
PatHartmanConnect With a Mentor Commented:
Use the ... button to select any registered file type.  Then click the Open button to open it.   It will even work to open web pages if you use the full name ---

I can't download the file where I am.

I never use the hyperlink data type since it isn't supported by SQL Server.  I use a standard text column.  In code, I use the FollowHyperlink method which will use Windows to determine which application to launch based on registry settings and open the correct application.  So if the file extension is .xls, Excel will open, if it is .txt, notepad will open, if it is .doc, Word will open.  If it is a web address, a web page will open up.  To make it look like a hyperlink, set the Display as Hyperlink property to Always on the property sheet.
Patrick O'DeaAuthor Commented:
Thanks Pat,

I am looking at FollowHyperLink .. it's new to me!

Is it possible to set a textbox = Application.FollowHyperlink strInputByUser??

... I am little beyond my comfort zone.

Ideally, if someone could download my database and tweak it!
Get 10% Off Your First Squarespace Website

Ready to showcase your work, publish content or promote your business online? With Squarespace’s award-winning templates and 24/7 customer service, getting started is simple. Head to Squarespace.com and use offer code ‘EXPERTS’ to get 10% off your first purchase.

No, you would reference another text box if you wanted the user to specify.

Application.FollowHyperlink Me.InputByUser

Here is a code sample taken from an application where I use it.  The form is bound so I save the current record first if it is dirty.  These are links I stored internally and I do not store the path with the file name for this application because I want to make it easy for the client to move the directories to a different location.  So, the code concatenates the path with the document name from the text box.

Private Sub cmdOpenDoc_Click()
    Dim strInput As String
On Error GoTo Err_cmdOpenDoc_Click
    If Me.Dirty Then
        DoCmd.RunCommand acCmdSaveRecord
    End If

    If Right(Me.ScannedDocPath, 1) = "\" Then
        strInput = Me.ScannedDocPath & Me.txtFullDocName
        strInput = Me.ScannedDocPath & "\" & Me.txtFullDocName
    End If
    Application.FollowHyperlink strInput, , True

    Exit Sub

    Select Case Err.Description
        Case 2501
            Resume Next
        Case 490    '   cannot open file
            MsgBox "This file cannot be found.  Please check its name and path.", vbOKOnly + vbInformation
            Exit Sub
        Case Else
            MsgBox  Err.Number & "--" &  Err.Description
            Resume Exit_cmdOpenDoc_Click
    End Select
End Sub

Open in new window

Patrick O'DeaAuthor Commented:
Thanks for advice ..

I have tried the VBA provided and some other stuff too.
I am coming across a number of problems ...
A whole variety of issues arising and I am losing my enthusiasm!

Would it be possible to send me a very simple db with a hyperlink facility.
Patrick O'DeaAuthor Commented:

Thanks for that.
It works very well.

(Now, I have to make sure that I don't break the golden rule! - I must try to understand the VBA - or at least most of it).
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.