在Access中打开插入HyperLink对话框

时间:2011-07-07 14:56:57

标签: ms-access vba hyperlink insert

场景:我需要能够复制访问功能,其中“右键单击,然后转到超链接,然后编辑超链接,找到照片,然后单击确定添加图像链接” 。我们的用户现在只能访问运行时,无法再完成此操作。

问题:我在互联网上搜索过,它告诉我使用Application.Dialogs打开对话框。唯一的问题是我没有这个选择。有人能够告诉我我需要添加哪个参考来完成此操作?或者是否有其他方法可以打开该对话框?

4 个答案:

答案 0 :(得分:2)

对于尝试完成此操作的未来用户,我最终必须发送按键才能打开对话框。您需要记住在发送密钥之前将焦点设置回文本框,否则它将无效。

Private Sub Command24_Click()
Text35.SetFocus
SendKeys ("^k")
End Sub

答案 1 :(得分:2)

DoCmd.RunCommand acCmdEditHyperlink

将打开超链接插入/编辑对话框。

“清洁”解决方案(如果您可以进行相应的更改):将路径存储为数据库中的文本,并通过Application.FollowHyperlink在您喜欢的任何事件上打开它。

答案 2 :(得分:2)

我阅读了整个页面,找到了一个精彩而快速的解决方案!我所做的就是应用建议将焦点设置到我的文本框中。

这是我根据以上内容构建的子程序:

Private Sub cmdHyperlink_Click()
   Me.txtPDFLink.SetFocus
   DoCmd.RunCommand acCmdEditHyperlink
   End Sub

它工作得很好,实际上比右键单击更容易和更快,我禁用了它以阻止用户关闭表单或将其置于设计模式,这是他们不应该做的。

答案 3 :(得分:0)

使用DoCmd.RunCommand acCmdEditHyperlink的另一种可能的解决方案是在超链接字段中双击。

Private Sub txtInvoiceOrReceiptLink_DblClick(Cancel As Integer)
On Error GoTo HandleErr

  DoCmd.RunCommand acCmdEditHyperlink

ExitHere:
Exit Sub

HandleErr:
  Select Case Err.Number
    Case 2501 ' The RunCommand was canceled
      Resume Next
    Case Else
      MsgBox "Error " & Err.Number & ": " & Err.Description, _
        vbCritical, "br.Form_sfrmCashInflow.txtInvoiceOrReceiptLink_Enter"
  End Select
  Resume ExitHere

End Sub

通过双击编辑对话框,您仍然可以仅单击以跟随超链接。当用户取消编辑对话框时,错误处理代码将替代默认消息。

该解决方案在数据表或连续表单(除了标准视图中的表单)之外都可以很好地工作,因为它不需要从该字段外部指定相关的记录和字段(如果您需要这样做,尝试通过命令按钮弹出编辑对话框对话框。

一个缺点是,对于具有现有超链接的字段,双击也会触发超链接(以显示超链接指向的任何文件/资源​​)。也就是说,除了启动编辑对话框之外。