如何在VBA、Excel中复制和选择图表、图片等
我有将图表复制为图片的代码。如何在VBA、Excel中复制和选择图表、图片等,vba,excel,charts,Vba,Excel,Charts,我有将图表复制为图片的代码。AChart.CopyPicture我想将其作为工作表粘贴到目标,但粘贴位置与复制图表的原始工作表中的位置相同。(因此使用AChart.Left和AChart.Top) 如果我的源代码和目标代码表中只有一个图表,那么这对我来说是非常直接的,但我有很多图表 因此,我建议的解决方案是在粘贴后立即选择新图表,并将.Left和.Top设置为正确的值。我只是不知道如何选择刚贴好的假牙 我的想法不是特别集中在这个解决方案上,我很清楚它可能会导致。因此,请随意从不同的角度来处理我的
AChart.CopyPicture
我想将其作为工作表粘贴到目标,但粘贴位置与复制图表的原始工作表中的位置相同。(因此使用AChart.Left
和AChart.Top
)
如果我的源代码和目标代码表中只有一个图表,那么这对我来说是非常直接的,但我有很多图表
因此,我建议的解决方案是在粘贴后立即选择新图表,并将.Left
和.Top
设置为正确的值。我只是不知道如何选择刚贴好的假牙
我的想法不是特别集中在这个解决方案上,我很清楚它可能会导致。因此,请随意从不同的角度来处理我的问题。您应该能够使用选择
对象修改粘贴的图表。目的地
工作表也必须是活动工作表。如果要从源工作表复制每个图表,可以对每个循环使用
Destination.Activate
For Each cht In Source.ChartObjects
cht.CopyPicture
Destination.Paste
Selection.Left = cht.Left
Selection.Top = cht.Top
Next cht
粘贴的图片不是选定的活动元素吗?如果是这种情况,你可以在粘贴后直接操作该对象的属性。换句话说,你是说Selection
object将允许我设置这些属性。这是正确的吗?这是我的想法,至少在没有测试或尝试的情况下。您可以找到正在复制的图表的.Left
和.Top
属性,然后将它们应用到图片中,使用每个对象的对象模型获取并设置这些值。以下问题和解决方案可以帮助您对齐工作表上的多个图表:Scott看起来您是正确的。一开始我无法重复你的解决方案,因为我忘了激活“目的地”,直到迪伦提醒我。