我在Word中有一张桌子: Table Example✓✓
表格在文档中加了书签,因为它可以出现在文档的不同位置。我使用这样的书签访问表格:
设置Tbl = ActiveDocument.Bookmarks("书签名称")。Range.Tables(1)
我有一个脚本,用于检查单元格是否有复选标记,并在具有复选标记时显示Msgbox,并且不应该根据行和列名称的某些条件显示。
以下是问题:
我希望通过Cell_OnLeave类型的事件触发此脚本,以便当用户离开单元格时,脚本将运行。这可能吗?
如果这不可能,我想在用户离开表时触发脚本,脚本可以检查整个表吗?也许bookmark_deselected事件适用于此?怎么可以这样做?
谢谢!
答案 0 :(得分:1)
可以在 Word 中为表格单元格创建自定义事件。 由于代码很长,我将只链接到一个 example document 和一个 GitHub gist。
我尝试尽可能多地注释代码以使其易于理解。
该模块为表格单元格创建进入、更改和退出事件,并创建一个事件管理器来定义每个事件的行为。
如果您不想阅读所有内容,请通过修改 CellEventManager
子例程来使用该模块。
sub 接收事件类型和触发事件的单元格,因此您可以根据自己的喜好正确定义事件响应。
我还为 OnExit 事件实现了取消功能:在处理 OnExit 事件期间设置 CellEventManager = Fail
以防止选择离开单元格。
答案 1 :(得分:0)
只能在Word中处理内置事件。表或书签没有特定事件。唯一让你在任何地方接近的事件是WindowSelectionChange事件,每次更改选择时都会触发,即每次移动插入点时都会触发。