MS Word 忽略富文本框中的内容控制

MS Word Ignores Content Control Inside a Rich Text Box

为什么我的 MS Word VBA 宏会忽略我放置在形状(富文本框)中的下拉列表?我试过通过标签、名称、数字等来引用它。我什至让宏告诉我内容控件的数量:

MsgBox(ActiveDocument.ContentControls.Count)

我得到 0。

没有任何效果。如果我把它变形,它就可以正常工作。 MS Word 给了我 1 项的计数。但出于某种原因,MS Word 不会在形状内识别它。关于如何执行此操作的任何帮助?

编辑为我之前的 post 完全错误。

正文故事中的每个文本框都是一个形状,您可以使用索引号访问它。形状具有各种属性,但文本等位于其文本框中(如果有的话)。但在那种情况下,您需要的范围不是 Range,而是 TextRange。所以,例如Shape 2 中的第一个 contentControl 是

ActiveDocument.Shapes(2).TextFrame.TextRange.ContentControls(1)

您可能需要遍历您的形状,并且您可能需要验证给定的形状是文本框 and/or 它有一个 TextFrame。

如果您的文本框在另一个故事中,例如页眉或页脚,您可能需要确定相关的故事范围。