【发布时间】:2014-06-13 16:24:47
【问题描述】:
好的,到目前为止,我已经设法编写了以下代码,但是在以range 开头的行上,我不断收到424 object required 错误。谁能告诉我如何解决这个问题?
Sub GetText()
Set PPApp = GetObject(, "PowerPoint.Application")
i = 1
Do While i <= PPApp.ActivePresentation.Slides(1).Shapes.Count
If PPApp.ActivePresentation.Slides(1).Shapes(i).Type = msoTextBox Then
range(Cells(i, 15)).Value = PApp.ActivePresentation.Slides(1).Shapes(i).TextFrame.TextRange.Text
End If
i = i + 1
Loop
End Sub
【问题讨论】:
-
用
Cells(i, 15).Value替换range(Cells(i, 15)).Value -
如果是 PPT 那么为什么要使用 range(Cells(i,15)),PPT 由 Shape、TextArea 组成。 Dim oRng As TextRange \n Set oRng = oShp.TextFrame.TextRange \n Set oTmpRng = oRng.Find( _ \n FindWhat:=searchtext, _ \n WholeWords:=False, _ \n matchcase:=matchvalue)
-
@simoco 谢谢你的建议,但我一直收到同样的错误
-
@Brain,感谢您的帮助...我对 vba 比较陌生,所以我不太确定如何将您的建议应用到我的代码中。如果您能帮助我,我将不胜感激!
标签: excel textbox powerpoint vba