vba - Microsoft 宏的问题。运行时错误 5941
问题描述
嗨,我收到了一个错误。我已经尝试了以下两个示例。如果您知道出了什么问题,请告诉我。谢谢!
Sub Spanish()
'
' Spanish Macro
'
'
Templates.LoadBuildingBlocks
Selection.Range.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
ActiveWindow.Close
Application.Quit
End Sub
Sub Algebra()
'
' Algebra Macro
'
'
Application.Templates.LoadBuildingBlocks
Selection.Range.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
ActiveWindow.Close
Application.Quit
End Sub
解决方案
你的代码不会像你想象的那样做。
这两个例程做的事情完全相同,操作任何选定的超链接并关闭 Word。
第一行 ,Application.Templates.LoadBuildingBlocks
与跟随超链接无关,应该删除。
我怀疑您打算在第二行 ,Selection.Range.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
打开一些特定的东西。它不会。它只会执行您当前选择的任何超链接,或者如果您的选择不包含超链接,则会创建错误。本质上,您刚刚创建了一种在单击超链接的同时按 Ctrl 的冗长方式。
最后两行将完全关闭 Word。这真的是你想要发生的事情吗?
要在 Word 中执行特定的超链接,您应该使用FollowHyperlink method
,例如:
ActiveDocument.FollowHyperlink Address:="https://stackoverflow.com/", NewWindow:=False, AddHistory:=True
“对不起,我不知道代码。我刚刚按下记录,它就起作用了。”
您无需了解代码即可意识到您录制的内容不会按您的预期工作。这两个例程可能是为了打开不同的链接,但只要快速阅读记录的代码就应该告诉你他们不会那样做。如果他们这样做了,他们将包含您想要关注的链接。
我对你的建议是只使用你所理解的。如果您想在 Word 中使用代码,请花一些时间学习如何操作。有很多在线资源可以学习 VBA,包括在线课程。尽管大多数是针对 Excel 而不是 Word,但它们仍然很有价值。
但不要只使用宏记录器并希望它能够工作。
推荐阅读
- python - 我是 Python 菜鸟,无法获得教程的正确输出。你能指导我了解我的函数调用的语法吗
- swiftui - 用于行的 SwiftUI NavigationLink
- assembly - 为什么这个“mov”指令会在目标寄存器的高位中产生多余的字节?
- javascript - Javascript:验证网格内容
- python - 在 Python 中从整数十进制索引生成浮点数
- python - 出现此错误(必须使用 URLconf 中的对象 pk 或 slug 调用通用详细视图 QuizView。)
- sql - SQL:从具有多条记录的多个表中选择数据以进行选择和连接
- mysql - 尝试从 mysql-master (Kubernetes) 克隆数据 (XtraBackup) 时连接被拒绝
- javascript - 在映射函数期间将 Unix 时间戳转换为 React 中的日期
- assembly - 当您提前知道路径时,是否可以“跳过”分支预测器?