我正在通过excel vba powerpoint幻灯片进行操作。我创建形状(“矩形”,“文本框”),但很难找到合适的索引号来进一步操纵它们。我知道我可以通过幻灯片(1).Shapes(I)索引数字来触摸它们,因为我从零创建ppt幻灯片。但我想在创建之后立即操纵它们。在粘贴方法中,我发现我可以编写代码Paste.Select,然后ActiveWindow.Selection给出了我的形状。但是我不能用AddShapes(msoRectangle.)Select来完成它。这就是为什么我希望将幻灯片中的所有对象名称都放到数组列表中,然后用矩形、TextBox这样的单词逐步在数组中搜索以查看它们。出于我的好奇心,ArrayList.Contains "TextBox“给出了"False”,尽管有一个名为"TextBox 1“的形状。我知道如果我写"TextBox 1“,它会给出真正的价值。但是我需要通过宏查找(什么:,LookIn),或者喜欢“TextBox*”.我还使用了数组的Filter方法,我也使用了另一个数组中的值,但是它给出了TypeMismatch 13错误。
Dim shpNameArr As Object Set shpNameArr = CreateObject("System.Collections.ArrayList") For each Item in .Slides(1).Shapes shpNameArr.Add Item.Name For Each Item in shpNameArr MsgBox Item