如果我在文件中有很多图表,并且我希望最终将它们全部导出为带有VBA代码的图像。如果图表没有给出"图表标题",VBA会将图表保存在"名称框"名称。问题是,如果我有很多图表,而不是其他人有顺序标签,我需要按顺序给它。例如,想要有名称为chart1,chart2,chart3,..的图表。
是否可以使用简单的VBA一次更改所有这些名称?如果您有100多张图表,那么为每个人手动更改它是非常耗时的。
问候,加斯珀
答案 0 :(得分:0)
您可以使用Shape.Chart
对象的Sheet
属性访问工作表的每个图表。
要更改工作表内每个图表的名称,请使用以下宏:
Sub SetChartTitle()
Dim s As Shape
Dim i as integer
i = 1
For Each s In Sheets("Sheet1").Shapes
If s.HasChart Then
s.Name = "mychart" & i ' set the chart name
i = i + 1
End If
Next s
End Sub
您甚至可以使用此循环导出所有图表s.Chart.Export