【问题标题】:Putting a hyperlink in a MessageBox将超链接放入 MessageBox
【发布时间】:2015-04-26 16:09:39
【问题描述】:

是否可以向消息框添加超链接?我正在尝试做这样的事情:

   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。

【问题讨论】:

  • 否,但您可以询问用户是否要打开链接,然后将 IE 导航到该位置。
  • 或为消息框构建一个自定义表单,然后您可以添加超链接

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


【解决方案1】:

直接的答案是。 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. 将标签的MousePointer 属性设置为99 - fmMousePointerCustom
  4. 为标签的MouseIcon 图像指定光标文件(如果有的话)。
  5. 双击标签并创建一个子程序Click事件。这是一个示例代码:

    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
    

要创建“邮寄至”超链接,请使用如下语句:

Link = "mailto:someone@somewhere.com"

【讨论】:

    猜你喜欢
    • 2019-03-24
    • 2013-11-26
    • 1970-01-01
    • 2013-06-13
    • 1970-01-01
    • 1970-01-01
    • 2011-09-22
    • 2017-08-07
    相关资源
    最近更新 更多