[英]VBA PowerPoint create all type of shapes
我正在vba中為powerpoint開發一些功能。 現在要測試我的解決方案,我需要在幻燈片上具有所有形狀類型的PowerPoint幻燈片。
其中一些listet易於創建:
https://msdn.microsoft.com/de-de/library/office/Ff744590.aspx
但是其他諸如類型= msoOLEControlObject或= msoEmbeddedOLEOLE或= msoplaceholder之類的我不知道如何創建。 但是我需要所有不同的shape.types。
知道如何自動創建它們嗎?
我試圖這樣做:
Sub CreateShapeType()
Dim slnr
slnr = ActiveWindow.Selection.SlideRange.SlideNumber
Set myDocument = ActivePresentation.Slides(slnr)
myDocument.Shapes.AddShape Type:=msoOLEControlObject, _
left:=100, top:=50, Width:=100, Height:=200
End Sub
即使確實創建了某些內容-當我控制形狀時,它們也不具有“ msoOLEControlObject”類型。
帶有循環的自動創建將是完美的。 請參見以下示例(它適用,但僅適用於所有自動形狀):
Sub CreateAutoshapes()
Dim i As Integer
Dim slnr, t As Integer
Dim shp As Shape
slnr = ActiveWindow.Selection.SlideRange.SlideNumber
t = 10
For i = 1 To 137
Set shp = ActivePresentation.Slides(slnr).Shapes.AddShape(i, 100, t, 60, 60)
shp.TextFrame.TextRange.Characters.Text = i
t = t + 70
Next
' skip 138 - not supported
If CInt(Application.Version) >= 12 Then
For i = 139 To 183
Set shp = ActiveSheet.Shapes.AddShape(i, 100, t, 60, 60)
shp.TextFrame.TextRange.Characters.Text = i
t = t + 70
Next
End If
End Sub
知道如何創建所有不同的類型嗎?
非常感謝您的幫助。
對於每種形狀類型都有特定的方法可用。 AddShape特定於AutoShapes。
查看其他方法,例如AddOLEObject,AddPlaceholder,AddPicture,AddTable,AddSmartArt等,以添加其他形狀類型。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.