Working with multiple discontinuous selection
我正在尝试通过多项选择来做某事。我想在每个选定的段落之前添加一些文本,但是当我选择多个不连续的段落时,如果我执行 Selection.Paragraphs.Count 我总是得到"1"。
我怎样才能分开所有段落?
示例:
1 2 3 | Paragraph1(Selected first) Paragraph2 Paragraph3(Selected second) |
当我尝试在这些段落的开头添加一些文本时得到了什么:
1 2 3 | Paragraph1 Paragraph2 TEXTParagraph3 |
我真正想要得到的东西:
1 2 3 | TEXTParagraph1 Paragraph2 TEXTParagraph3 |
我是这样工作的:
1 2 3 4 5 6 | sub x() dim p as paragraph for each p in selection.paragraphs p.range.insertbefore("TEXT") next End sub |
Word 根本无法做您希望它做的事情。自从 2003 年推出多项选择以来,开发人员一直希望这样做(我认为是,可能是 2007 版)。 Word\\ 的对象模型根本不支持它。
如果这是您想提供给用户以使生活更轻松的东西,您需要为该工具提供一种标记段落的方法,以便您的代码能够识别它们。例如,您可以提供一个宏,为每个选择分配一个递增的书签名称(用户选择,然后运行您的宏;对每个段落重复)。然后,您的代码可以寻址每个书签并执行操作。为了使这更加用户友好,您可以将宏分配给键盘快捷键和/或功能区/QAT 和/或右键菜单中的按钮。