复制并粘贴图表以滑入 VBA

Copy and Paste charts to slide in VBA

我正在创建一个 VBA 代码来复制 Excel 工作簿的特定工作表的图表并将其粘贴到 Power Point 幻灯片中。这是我的代码:

我在“'Windows("FilenameExcel").Activate'”上收到 "runtime error '9' Subscript out of range",但我不知道我做错了什么。

我该如何解决这个问题?

Sub copyPastePPT()

Dim MyPPT As Object
Dim xChart As Excel.ChartObject
Set MyPPT = CreateObject("Powerpoint.application")
Set myXLS = CreateObject("Excel.application")

FilenamePPT = OpenFileDialogPPT() 'Function to browse to a Power Point Presentation
FilenameExcel = OpenFileDialogXLS() 'Function to browse to a Excel Workbook

MyPPT.presentations.Open FilenamePPT
Workbooks.Open FilenameExcel


    Windows("FilenameExcel").Activate
    Sheets("Breakdown New").Select

    ActiveSheet.ChartObjects.Select
    ActiveChart.ChartArea.Copy

    'Copy chart to a specific slide

    Windows("FilenamePPT").Activate
    MyPPT.ActiveWindow.View.GotoSlide (3)
    MyPPT.ActivePresentation.Slides(3).Select
    MyPPT.CommandBars.ExecuteMso ("PasteSourceFormatting")
    MyPPT.CommandBars.ReleaseFocus



End Sub
Sub copyPastePPT()

Dim MyPPT As Object, wb, pp
Dim xChart As Excel.ChartObject
Set MyPPT = CreateObject("Powerpoint.application")
Set myXLS = CreateObject("Excel.application")

FilenamePPT = OpenFileDialogPPT() 'Function to browse to a Power Point Presentation
FilenameExcel = OpenFileDialogXLS() 'Function to browse to a Excel Workbook

Set pp = MyPPT.presentations.Open(FilenamePPT)
Set wb = Workbooks.Open(FilenameExcel)

pp.Sheets("Breakdown New").ChartObjects(1).Chart.ChartArea.Copy

'Copy chart to a specific slide

pp.Slides(3).Select
MyPPT.CommandBars.ExecuteMso ("PasteSourceFormatting")
MyPPT.CommandBars.ReleaseFocus

End Sub