无法使用 VBA 复制 Excel 地图图表

Unable to copy Excel Map Chart using VBA

我正在尝试使用 VBA 在 MS Excel 2016 中自动生成 PowerPoint 演示文稿。我想复制基于数据透视表的地图图表,但收到“运行 时错误‘445’:对象不支持此操作”。

我正在使用 Excel 2016。我正在尝试复制基于枢轴 table 的地图图表,但无法将图表复制到 'copy'。我试过录制一个宏,但是当我 运行 录制的代码时,它会产生同样的错误。我已经包含了下面代码的简化版本,它仍然会为我产生错误。当我将此代码应用于同一工作表中的其他图形(条形图或线条)时,没有错误。

Sub X()
    Dim wb As Workbook
    Dim wsa As Worksheet
    Dim ch As ChartObject
     
    Set wb = ThisWorkbook
    Set wsa = Sheets("World Map")
    
    For Each ch In wsa.ChartObjects
        myleft = ch.Left
        myright = ch.Top
        ch.Copy
    Next ch
End Sub

ch.Copy 产生错误。我希望能够成功复制它,并添加代码以将其粘贴到 PowerPoint 中。

您是否尝试过使用 "ch.CopyPicture" 而不是 "ch.Copy"?它对我有用。

Sub X()

Dim wb As Workbook
Dim wsa As Worksheet
Dim ch As ChartObject

Set wb = ThisWorkbook
Set wsa = Sheets("World Map")

For Each ch In wsa.ChartObjects
    myleft = ch.Left
    myright = ch.Top
    ch.CopyPicture
Next ch

结束子