将图表从一张纸复制到另一张纸

时间:2017-07-19 12:37:43

标签: excel vba excel-vba

我有两张表格,并希望将图表从sheet1复制到sheet2。

我使用下面的代码,代码是从Sheet1中删除图表并将它们粘贴到sheet2中。相反,我只想拥有图表的副本。

另外,我想让我的图表在特定范围内。我怎么编辑它们?

Anylead会很有帮助

 Sub overview1()
    Dim chartobj As Object
    For Each chartobj In Sheets("CAT").ChartObjects
    chartobj.chart.Location xlLocationAsObject, "Overview_1"

    Next chartobj
    For Each chartobj In Sheets("Dev").ChartObjects
    chartobj.chart.Location xlLocationAsObject, "Overview_1"
    Next chartobj
End sub

1 个答案:

答案 0 :(得分:2)

您应该尝试使用复制/粘贴技术,如下所示。

Sub overview1()
    Dim OutSht As Worksheet
    Dim Chart As ChartObject
    Dim PlaceInRange As Range

    Set OutSht = ActiveWorkbook.Sheets("Overview_1") '<~~ Output sheet
    Set PlaceInRange = OutSht.Range("B2:J21")        '<~~ Output location

    'Loop charts
    For Each Chart In Sheets("CAT").ChartObjects
        'Copy/paste charts
        Chart.Copy
        OutSht.Paste PlaceInRange
    Next Chart

End Sub

这只是一个让你继续前进的简单例子。显然,这个例子将所有图表粘贴在输出表中完全相同的位置,这可能不是你想要的。