【发布时间】:2020-07-25 09:46:30
【问题描述】:
我是 VBA 的新手。出于某种特殊的目的,我想把光标移到文档的末尾,在网上搜索的时候发现了下面的代码sn -p。
Selection.EndKey Unit:=wdStory
, 这里我的具体问题是这个 wdStory 是什么?当我搜索这个时,我得到了数百个名为 enumerations 的东西,我想知道为什么要使用它们,以及这一行对编译器的解释是什么。
【问题讨论】:
-
枚举是常量的集合。因此,关于将选择移动多远的所有常量都在一个枚举中。为了您的利益,您可以轻松记住它们,因为它们在代码中被视为其文字值 (
wdstory = 6)。这就是编译器看到的 -Selection.EndKey Unit:=6在您的命名语法中。编译器使用定位所以EndKey(6, False). -
参见docs 和Chip Pearson 关于
Enum常量;如果标志 /"composite" 枚举部分激起了您的兴趣,请查看 按位运算。干杯! -
Microsoft 的枚举页面显示常量列表(单词形式)以及它们的等价数字(数字形式)。这是一个示例页面:docs.microsoft.com/en-us/office/vba/api/word.wdunits 通常使用单词形式更方便。如果您使用 OLE 从 Word 中控制 Excel,并且您没有在代码中引用 Excel 库,则数字形式将起作用,而 Word 形式将不起作用。
-
在 RTF 控件中,文档中只有一个
wdstory,即正文。