Excel VBA在更改数据源时基于原始图形循环和创建多个图形

Excel VBA在更改数据源时基于原始图形循环和创建多个图形,excel,vba,loops,graph,copy,Excel,Vba,Loops,Graph,Copy,我有一个宏,它可以从一个较大的数据集中复制和粘贴一个基于所需国家/地区的数据集(PasteData)。这意味着“粘贴数据”可能有更多或更少的列,具体取决于我选择的国家数量 接下来,我想在我创建的原始图形的基础上,基于这个“粘贴数据”表创建图形。目前我有以下宏,它基于我的原始图形创建第二个图形。是否有任何方法循环它,以便它将创建图形,直到“PasteData”中所有可用数据的末尾?数据遵循特定格式,因此偏移量为7列,范围为C:D。谢谢 Dim r As Range Dim shPasteData

我有一个宏,它可以从一个较大的数据集中复制和粘贴一个基于所需国家/地区的数据集(PasteData)。这意味着“粘贴数据”可能有更多或更少的列,具体取决于我选择的国家数量

接下来,我想在我创建的原始图形的基础上,基于这个“粘贴数据”表创建图形。目前我有以下宏,它基于我的原始图形创建第二个图形。是否有任何方法循环它,以便它将创建图形,直到“PasteData”中所有可用数据的末尾?数据遵循特定格式,因此偏移量为7列,范围为C:D。谢谢

Dim r As Range
Dim shPasteData As Worksheet
Set shPasteData = Worksheets("PasteData")

Sheets("PasteData").Select
Set r = ActiveSheet.Range("C:D")

Sheets("Macro").Select
ActiveSheet.ChartObjects("Chart 3").Activate

ActiveChart.ChartArea.Copy

ActiveSheet.Paste
ActiveSheet.ChartObjects(ActiveSheet.ChartObjects.Count).Select
ActiveChart.PlotArea.Select
ActiveChart.SetSourceData Source:=r.Offset(0, 7)

End Sub

能否添加一个屏幕截图,显示工作表“粘贴数据”上的数据是什么样子?另请注意:直接参考工作表是一种很好的做法。例如:
Set r=shPasteData.Range(“C:D”)
感谢您的提示,我们会记住这一点。我已经编辑了我的帖子,加入了“粘贴数据”的图片。我希望为每个国家创建图表,显示新病例和新死亡,因此范围为C:D,偏移量为0,7