Привет. Я пытаюсь скопировать диаграммы из листа Excel и вставить их в слайд Powerpoint. Я пробовал два способа реализации этого в VBA.
1.Опция: сбой - не поддерживает свойство или метод> PasteSpecial.
For i = 1 To 10
ppFile.Slides(i + 1).Select
Worksheets("Darstellung").ChartObjects(i).CopyPicture
Set objShape = ppFile.Slides(i + 1).Shapes.PasteSpecial(Datatype:=ppPasteDefault)'<<< problem in this line
With objShape
.LockAspectRatio = msoFalse
.ScaleWidth 1.5, msoTrue
.ScaleHeight 1.9, msoFalse
.Top = 100
.Height = 350
.Width = 700
.Left = 150
End With
Set objShape = Nothing
Next
2.Опция: полу сбой - работает, но для вставки одной диаграммы требуется 1 и полминуты и выдает исключение: «Excel ожидает каждого приложения для завершения действия ole» после каждой диаграммы. Нажав кнопку ОК, можно запустить VBA и вставить следующий график.
For i = 1 To 10
ppFile.Slides(i + 1).Select
Worksheets("Darstellung").ChartObjects(i).CopyPicture
Set objShape = ppFile.Slides(i + 1).Shapes.Paste '<<< problem in this line
With objShape
.LockAspectRatio = msoFalse
.ScaleWidth 1.5, msoTrue
.ScaleHeight 1.9, msoFalse
.Top = 100
.Height = 350
.Width = 700
.Left = 150
End With
Set objShape = Nothing
Next
Есть ли способ реализовать его на Ma c, чтобы он работал правильно и эффективно?