Ma c - Копирование / вставка диаграмм из Excel в Powerpoint через VBA (Excel / PPT V.16.35) - PullRequest
1 голос
/ 20 марта 2020

Привет. Я пытаюсь скопировать диаграммы из листа 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, чтобы он работал правильно и эффективно?

...