0

我对 VBA(Word 2010)相当陌生,我不确定我想做的事情是否可能以我想做的方式进行,或者我是否需要调查完全不同的途径。我希望能够打印当前未作为 wdPrintOutRange 或 wdPrintOutItem 的一部分枚举的范围(或项目)。是否可以定义 wd 枚举的成员?

例如,我希望能够打印特定用户的评论。wdPrintComments 是 wdPrintOutItem 枚举的成员,但是,我只想要初始值为 JQC 的注释。我可以定义一个 wdPrintCommentsJQC 常量吗?我的代码相当简单;我有一个用户表单,允许用户选择一些设置(用户评论、仅尾注等)和一个运行按钮,其 Click 事件应生成具有适当属性的 PrintOut 方法。我在错误的轨道上吗?

(如果重要的话,我在编写代码时会知道初始值。我有一个离散列表。)

4

2 回答 2

2

不,不可能将常量添加到预定义的枚举类型。但是,一种可能的方法是构建一个包含您要打印的项目的页码字符串,打开“对话框”集合中的打印对话框,并将其设置为打印指定范围,然后插入包含页面列表(用逗号分隔)。最后,执行打印对话框的 .show 方法将其显示给用户,让他们有机会设置任何其他项目,然后单击“确定”按钮。当我需要打印长文档的特定章节时,我做了非常相似的事情,因此我必须为用户指定“从”部分和页面以及“到”部分和页面。下面我只展示如何指定页面列表而不是“.form”和“

With Dialogs(wdDialogFilePrint)
  .Range = wdPrintRangeOfPages
  .Pages = "3,5,7-11"
  .show
end with
于 2012-09-28T13:25:20.803 回答
0

我不确定您要如何打印评论(或其他元素),但您可以创建另一个文档并在此文档上插入您想要打印的内容。

根据您的需要,您可以按原样(注释、脚注等)或纯文本或任何其他格式插入它们。

于 2015-04-29T19:12:05.233 回答