编辑:我已经为该帖子更新了更多信息。
我在Word中的标题中有一个内容控件,其中有一个日期时间选择器。当用户离开选择器的焦点(模糊)时,我正在尝试引发_ContentControlOnExit事件。
让我们假设我已经手动创建了内容控件,并且为它分配了日期选择器。我还用值git clone --bare <from-repository>
cd <from-repo-dir>
git push --set-upstream <to-repository> --all
git push --set-upstream <to-repository> --tags
对其进行了标记。
我希望每次更改日期时,我都执行一个子例程,该例程会将文本值插入另一个标记为date
的ContentControl中。我尝试了下面的代码,但没有成功。
请注意,日期ContentControl在Word文档的标题内。
tide-level
我记得在某处读过,每当标题中包含内容时,似乎事情就出现问题了……
有什么想法吗?
P.S: 当前使用Word 365-VBA
答案 0 :(得分:1)
基于问题中过程的名称-ActiveDocment_ContentControlOnExit
-看来事件处理程序不是由Word 自动生成的,因此它不在{{1}中}包含内容控件的文档的类模块。事件处理程序的名称(由VBA编辑器生成)通常为ThisDocument
。
内容控制事件处理程序必须位于Document_ContentControlOnExit
中。从理论上讲,可以手动键入它们,但是Word并不总是能够识别手动键入的事件处理程序。因此,最好使用VBA编辑器的自动“存根”生成来获取结构:
这时,VBA编辑器将为您创建“存根”-所需要做的就是执行代码。
有关内容控件位于标题中的注意:只要退出时焦点仍保留在标题中,此事件就会触发。但是,如果用户双击文档正文以退出标题,则不会触发该事件。 (至少不是在我的测试中。)如果这是一个问题,则可能需要将此字段放在文档正文中,并在标题中添加第二个链接的内容控件以反映选择。这样做有点复杂(需要文档中的“自定义XML部件”来管理链接的信息),但是您使用的Word版本应该具有设置它的工具。
答案 1 :(得分:0)
宏名称应为:
Docment_ContentControlOnExit
否:
ActiveDocment_ContentControlOnExit