The code to open a file needs the following Win32 API declaration in the
General Declarations section of a new Module (you can't put it in the code
behind the UserForm):
Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
(ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String _
, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal
nShowCmd As Long) As Long
Then you can launch the file like this:
Dim varRet As Variant
varRet = Shell("""C:\Program Files\Microsoft Office\Office12\EXCEL.EXE""
""C:\Temp\myworkbook.xls""", vbNormalFocus)
Change 12 in the file path to 11 if you are using Office 2003.
The trickiest part is making the user think he's clicking on a hyperlink.
None of the built-in controls are satisfactory for replicating a true "URL
clicking experience". For example, you'd have to manually make the text blue
and underlined and write additional code to change the cursor to a
hand-with-finger during a MouseOver event for the control.