Sub TEST3()
'グラフをコピー
Worksheets("Sheet1").ChartObjects(1).Copy 'コピー'グラフを貼り付け
With Worksheets("Sheet2")
.Paste '貼り付け
.ChartObjects(.ChartObjects.Count).Left = .Range("B3").Left '左の位置
.ChartObjects(.ChartObjects.Count).Top = .Range("B3").Top '上の位置
End With
End Sub
Sub TEST4()
'グラフをコピー
With Worksheets("Sheet1").ChartObjects(1)
a = .Left '左
b = .Top '上
.Copy
End With
'グラフを貼り付け
With Worksheets("Sheet2")
.Paste '貼り付け
.ChartObjects(.ChartObjects.Count).Left = a '左の位置
.ChartObjects(.ChartObjects.Count).Top = b '上の位置
End With
End Sub
Sub TEST5()
Dim Obj
For Each Obj In Worksheets("Sheet1").ChartObjects
a = Obj.Left '左
b = Obj.Top '上
Obj.Copy 'グラフをコピー'グラフを貼り付け
With Worksheets("Sheet2")
.Paste '貼り付け
.ChartObjects(.ChartObjects.Count).Left = a '左の位置
.ChartObjects(.ChartObjects.Count).Top = b '上の位置
End With
Next
End Sub
複数のグラフを用意しておきます。
複数のグラフを用意
では、VBAコードを実行してみます。
「複数」のグラフをコピーできた
VBAで「複数」のグラフをコピーできました。
グラフを画像としてコピーする
グラフを「画像」としてコピーすることもできます。
「CopyPicture」を使う
使うのは、「CopyPicture」です。
Sub TEST6()
'画像としてコピー
ActiveSheet.ChartObjects(1).CopyPicture
ActiveSheet.Range("B14").Select 'セルを選択
ActiveSheet.Paste '貼り付け
End Sub