【问题标题】:Word 2007 + Use commands via macro?Word 2007 + 通过宏使用命令?
【发布时间】:2011-08-10 12:04:15
【问题描述】:

我想知道是否可以通过 vba 宏触发 Word 命令?我实际上要做的是让用户更容易打开您可以通过新建 --> 文档 --> 我的模板找到的新文档或模板窗口

我发现我可以在 Word 2010 中添加一个自定义选项卡。但我已经使用 Microsoft Office 的自定义 UI 编辑器添加了一个自定义选项卡。但是在尝试自定义功能区时它不会出现。我还尝试录制一个宏,然后打开您选择要打开的模板的窗口。但它没有记录使窗口实际出现的动作。

有什么想法吗?

【问题讨论】:

标签: vba ms-word ribbon word-2007


【解决方案1】:

是的,这是可能的,尽管 Word 2010 中的 Backstage 视图使这有点棘手。基本上,Word 带有许多控制其命令并且可通过 VBA 访问的内置宏。这些命令可以通过显示 Developer Tab、单击 Macros 按钮并将“Macros”对话框的 Macros in: 菜单更改为显示 Word 命令:

要通过 VBA 访问“我的模板”对话框,请使用以下代码:

Application.Run MacroName:="FileNewDialog"
SendKeys "%NM"

FileNewDialog 访问现有的 Word 宏以显示 Backstage 视图,Sendkeys 使用 Alt 键击键来操作并打开我的模板对话框(有关 SendKeys 的更多信息,请参阅 Word 2010 VBA 帮助条目)。将代码放入 Sub 并创建一个要执行的 QAT 或 Ribbon 按钮,您应该一切顺利。

关于测试 SendKeys 的重要说明:SendKeys 无法通过单步执行 VBA IDE 中的代码来测试,因为它在运行时发出的击键会在执行时发送到活动窗口(其中将是 VBA 开发窗口)。要测试 SendKeys,请保存宏并将其附加到 QAT 按钮,可以根据需要按下该按钮进行测试。

【讨论】:

  • 嗯,这确实有效。但是,没有其他我可以使用的命令吗?我看到如果我转到 Office 按钮并单击新建,我可以选择“我的模板”,这会打开一个类似的对话框视图,只删除 Microsoft 提供的默认模板。我真的不需要那些。
  • 据我所知,没有内置的宏或命令可以将用户带到“我的模板”,因此需要这种解决方法。但是,由于您不需要其他模板,您可以删除或移动它们,这将允许宏对话框仅显示您想要的内容。
  • 嗯,这意味着脚本的另一部分将删除该废话。我得去看看。或者让人们接受它:) 也许我可以创建一个包含这些自定义模板的特定文件夹。我知道这些文件夹在此视图中显示为一个选项卡。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多