在MessageBox中放置超链接

时间:2015-02-24 20:47:04

标签: vba hyperlink access-vba ms-access-2010 messagebox

是否可以在邮箱中添加超链接?我正在尝试做这样的事情:

   MsgBox "Sorry, but you have an out-of-date database version.  Please redownload via the batch file to ensure that you have the latest version. Contact the administrator of this database or your manager if you need help." & vbCr _
        & vbCr _
        & "Your current database version is " & CurrentVer & " which may be out of date. The current database version prescribed on the network share is " & FileVer & ". They must match in order for you to proceed." & vbCr _
        & vbCr _
        & "For CSC self-help instructions on how to reload the most current version of the PRF Intake Tool to your computer, please click the link below to be directed to CSC Online instructions." & vbCr _
        & vbCr _
        & "http://www.OurSite.com/online/Solutions/Search_Results.asp?opsystem=7&keywords=PRF+Intake+Tool&Category=", , "There is a problem..."

问题是,超链接无法点击。我想这样做,以便用户只需点击链接并自动开始下载。

我在Win7环境中使用Access 2010。

1 个答案:

答案 0 :(得分:8)

直接的答案是。 MsgBox不允许超链接,只是纯文本。

因此,这是一个应该正常工作的解决方法。

Set objShell = CreateObject("Wscript.Shell")

intMessage = MsgBox("Sorry, but you have an out-of-date database version.  Please redownload via the batch file to ensure that you have the latest version. Contact the administrator of this database or your manager if you need help." & vbCr _
        & vbCr _
        & "Your current database version is " & CurrentVer & " which may be out of date. The current database version prescribed on the network share is " & FileVer & ". They must match in order for you to proceed." & vbCr _
        & vbCr _
        & "Would you like to learn more about CSC self-help instructions on how to reload the most current version of the PRF Intake Tool to your computer?", _
        vbYesNo, "There is a problem...")

If intMessage = vbYes Then
    objShell.Run ("http://www.OurSite.com/online/Solutions/Search_Results.asp?opsystem=7&keywords=PRF+Intake+Tool&Category=")
Else
    Wscript.Quit
End If

如果需要下划线样式,那么您应该按http://j-walk.com/ss/excel/tips/tip71.htm所述创建自己的用户表单。以下是步骤:

  1. 添加Label对象并输入消息
  2. 将标签设为蓝色(ForeColor)并加下划线(Font),使其看起来像一个典型的超链接。
  3. 将Label的MousePointer属性设置为 99 - fmMousePointerCustom
  4. 指定Label的MouseIcon图像的光标文件(如果有的话)。
  5. 双击标签并创建单击事件的子例程。这是一个示例代码:

    Private Sub Label1_Click()
      Link = "http://www.YOUR_SITE.com"
      On Error GoTo NoCanDo
      ActiveWorkbook.FollowHyperlink Address:=Link, NewWindow:=True
      Unload Me
      Exit Sub
     NoCanDo:
      MsgBox "Cannot open " & Link End Sub
    
  6. 要创建“邮件到”超链接,请使用以下语句:

    Link = "mailto:someone@somewhere.com"