vba - 如何在VBA、Excel中复制和选择图表、图片等

标签 vba excel charts

我有将图表复制为图片的代码AChart.CopyPicture我想将其粘贴到Destination as Worksheet,但将其粘贴到与中相同的位置我从中复制图表的原始表。 (因此使用 AChart.LeftAChart.Top)

如果我的源工作表和目标工作表中只有一张图表,但我有很多图表,这对我来说将非常简单。

所以我建议的灵魂是在粘贴新图表后立即选择它,并将 .Left.Top 设置为正确的值。我只是不知道如何选择刚刚粘贴的图片?

我并没有特别关注这个解决方案,我很清楚它可能会导致 XY problem 。因此,请随意从不同的角度解决我的问题。

最佳答案

您应该能够使用 Selection 对象修改粘贴的图表。 Destination 工作表也必须是事件工作表。如果您想复制源工作表中的每个图表,可以使用 For Each 循环。

Destination.Activate
For Each cht In Source.ChartObjects
    cht.CopyPicture
    Destination.Paste
    Selection.Left = cht.Left
    Selection.Top = cht.Top
Next cht

关于vba - 如何在VBA、Excel中复制和选择图表、图片等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32399840/

相关文章:

vba - 枢轴和运行时错误 1004 : Application-defined or object-defined error

java - Apache poi Excel 设置从右到左的阅读顺序

javascript - 如何为 jqPlot 中的特定数据系列设置 Stack Series false

excel - 如何在VB脚本中设置延迟让Excel更新数据

excel - 在 VBA 代码中压缩多个 OR 条件

vba - 自动填充只读 Excel 2010 xlsm 另存为文件名框

具有负值和正值的 jQuery 堆积柱形图

javascript - HighCharts 未显示所有类别

vba - 将 VBA 过程/函数写入 .xlam 插件

Excel VBA 组合框禁用问题