Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 根据ID或标题获取特定内容控件的索引_Vba_Ms Word_Word Contentcontrol - Fatal编程技术网

Vba 根据ID或标题获取特定内容控件的索引

Vba 根据ID或标题获取特定内容控件的索引,vba,ms-word,word-contentcontrol,Vba,Ms Word,Word Contentcontrol,我希望通过VBA检索给定特定标题的单词content control的索引,而不必在所有内容控件中循环查找标题 我知道我想要选择的内容控件的标题,因此我可以将特定内容控件的ID设置为一个变量 a = ActiveDocument.SelectContentControlsByTitle("123").Item(1).ID 现在,我想知道在文档中的其他内容控件(文件模板中有450多个内容控件)中,此项的索引是什么,以便我可以将内容控件索引作为变量引用 在外行术语中,我希望类似于“b=getInd

我希望通过VBA检索给定特定标题的单词content control的索引,而不必在所有内容控件中循环查找标题

我知道我想要选择的内容控件的标题,因此我可以将特定内容控件的ID设置为一个变量

a = ActiveDocument.SelectContentControlsByTitle("123").Item(1).ID
现在,我想知道在文档中的其他内容控件(文件模板中有450多个内容控件)中,此项的索引是什么,以便我可以将内容控件索引作为变量引用

在外行术语中,我希望类似于“b=getIndexOfA(a)”的内容,以便我可以执行后面的过程,例如:

for i=b to ActiveDocument.ContentControls.Count
    .....
next i

我正在Windows 10上运行Word 2016。

以下方法适用于作为文本一部分的文档体中的几乎所有对象(与浮动图像相反)。获取对象的
范围
,然后将其起点设置为文档的开头。统计范围内该类型的所有对象:

Dim lIndexCC as Long
Dim cc as Word.ContentControl
Dim rng as Word.Range

Set cc = ActiveDocument.SelectContentControlsByTitle("123").Item(1)
Set rng = cc.Range
rng.Start = ActiveDocument.Content.Start
lIndexCC = rng.ContentControls.Count
Debug.Print lIndexCC