vba - 打开 Word 时不会触发 Word VBA AutoNew 宏
问题描述
使用 Word 2013。
我发现这个之前的问题是相似的,但没有接受的答案,我也不想构建一个加载项,所以我希望我不需要复杂的东西。
我的 Normal.dotm 中有 AutoNew 和 AutoOpen 宏。它们工作得很好,只是当我从任务栏或其他图标打开 Word 时它们都不会触发。在这种情况下,Word 打开时显示空白“Document1”,但没有我想要的初始化。
假设我的宏在打开或创建文档时显示带有文档名称的消息。我知道这很愚蠢,但这似乎是一个可行的例子。
如果我通过在文件资源管理器中单击文档或使用 File | 打开文档 打开或归档 | 新建,然后会触发相应的宏并弹出消息。
但是,如果我只是从头开始打开 Word,则不会触发宏,并且没有显示“Document1”的消息。
我尝试使用 AutoExec 来解决这种情况,但是当 AutoExec 触发时,没有活动窗口,也没有加载文档。
想法?
解决方案
问题中引用的示例不是“可行的”,因为想要显示自动生成的文档的名称是没有意义的。
在任何情况下,只有AutoExec
在 Word 应用程序启动时才会触发 - 这是设计使然。AutoNew
在应用程序启动时 Word 创建新的默认文档时不会触发。(您还会注意到,如果您立即打开另一个文档,而不对默认文档执行任何操作,该文档会自动关闭。从某种意义上说,此默认文档在用户对其采取操作之前不存在。)
可行的是在 AutoExec 期间显式创建一个新文档。这将产生一个代替默认文档的文档的效果。该文档将与该默认文档具有相同的名称。唯一不同的是,当打开另一个文档时,该文档不会自动关闭。
创建文档时,将触发AutoNew
(和)。Document_New
Sub AutoExec()
Documents.Add
End Sub
推荐阅读
- python - 如何在使用 requests-html 时将参数传递给异步函数
- kdb - 除了 k4 中的(^ 或 _dvl)模拟,8 Queens 示例
- typescript - TypeScript:将类型化对象传递给接受受限但通用参数的函数
- angular - 移动应用程序的 Firestore 存储 Angular2 更新配置文件图像
- r - 将长字符串拆分为三个变量
- python - 我们如何在 django 中创建异步 API?
- javascript - 我捕获屏幕时的webrtc速度问题
- assembly - 在汇编中访问内存地址的正确形式是什么
- reactjs - React Map GL Draw typescript错误“声明或声明预期”
- verilog - 创建 12 Hz 方波信号 50MHz 时钟信号