添加注释禁用内容控件切换空格键

时间:2015-04-15 14:24:51

标签: vba ms-word word-vba

我正在开发一个Word宏,用于检查用户选择的一系列复选框内容控件的有效性。复选框分为是 - 否对。目前,如果用户选中对中的两个复选框而未选中任何一个,则会在侧面显示注释。

例如,我的文档如下所示:

Was an interpreter used?
    yes[ ] no[ ] 
If yes, was the interpreter understood?
    yes[ ] no[ ]

如果用户在第一个问题中同时选中是和否而未将[x]的值更改为"Was an interpreter used?",则会在"Please check one of the following:"周围的书签中添加评论,例如Document_ContentControlOnExit

每次触发no[ ]事件时都会检查复选框组的有效性。通常,用户可以通过按空格键来更改是否选中复选框。

问题是,添加评论后,空格键会停止,允许用户切换下一个复选框。例如,如果我在第一个问题中选择了Was an interpreter used?框,并按Tab键,则会在yes[ ]添加评论,并在下一个问题中将焦点转移到yes[ ]。但是现在,如果用户按空格键,则第二个问题中的yes[ ]不会被检查。我仍然可以通过复选框进行选项卡,只要我从Set myComment = TempDoc.Comments.Add(TempDoc.Bookmarks(Bookmark).Range, Text) 跳出标签,就会返回空格键功能。我目前用来添加评论的行是:

{{1}}

该行只是为预先定义的书签添加新评论,提醒用户该错误。我几乎肯定这是导致空格键停止工作的线,因为当我评论它时一切正常。

如何在添加评论后让空格键切换下一个复选框?

1 个答案:

答案 0 :(得分:1)

我不知道造成这种情况的确切机制,但在我看来,在您创建评论后,Word正在选择不同级别的下一个文本框'比否则。我创建了一个我认为你正在做的非常基本的版本,当我从一组需要评论的复选框中选中时,我看到的与我从一组复选框中选中的标签略有不同不需要评论。

enter image description here enter image description here

似乎解决了这个问题的原因是在添加评论的行之后添加了一行:

Selection.End = Selection.Start

这似乎迫使复选框的选择状态回到空格键工作所需的状态。希望这对你有用。似乎没有大量关于此Word功能在线的文档。