2

我正在尝试创建一个宏来格式化 Excel 中的图表,以便我的所有图表都具有相同的格式,但数据不同。通常我只会粘贴格式,但这些图表是使用插件制作的,它们似乎与“粘贴格式”不兼容。每个图表与图表数据一起位于不同的工作表中。

我的图表有 3 个系列。每个系列都有特定的格式,例如系列 1:圆形标记,大小 3pt,无标记线,绿色填充。系列 2:圆形标记,尺寸 3pt,黑色标记线,黄色填充。系列 3:圆形标记,大小 3pt,无标记线,红色填充。

此外,图表需要具有特定的展示尺寸(目前还不确定确切的尺寸,但大概应该很容易编辑)。

这些是我需要从默认值更改的唯一参数,以便让图表看起来像我想要的那样。任何人都可以帮忙吗?

4

1 回答 1

2

使用 VBA 可以很容易地完成图表格式化:

Dim chChart as chart
set chChart = Thisworkbook.Sheet("Sheet1").ChartObjects("Chart1").Chart
With chChart
    seriescollection(1).Markerforegroundcolor = rgb(255,255,255)
    seriescollection(1).Markerbackgroundcolor = rgb(255,255,255)
    seriescollection(1).interior.color = rgb(255,255,255)
End With

上面的代码应该让您了解如何编写宏,替换正确的工作表和图表名称。理想情况下,您还可以使用一些循环来遍历图表和图表中的系列

For each chart in Thisworkbook.Sheet("Sheet1").ChartObjects
For each series in chChart.seriescollection

要获得您想要更改的确切值,我建议您记录手动进行更改的宏或使用编辑器对象浏览器(VBA 编辑器中的 F2)来查找可能的值。

于 2012-09-13T16:52:47.047 回答