【发布时间】:2014-08-19 16:06:52
【问题描述】:
我有以下子来创建饼图:
Sub CreatePieChart(dataSource As String, chartTitle As String, positionX As Double, positionY As Double)
Dim newChart As Shape
Range(dataSource).Select
Set newChart = ActiveSheet.Shapes.AddChart
With newChart
.Select
.Chart.ChartType = xlPie
.Chart.SetSourceData Source:=Range(dataSource)
.Chart.chartTitle.Select
.Chart.chartTitle.Text = chartTitle
.Chart.SeriesCollection(1).Select
.Chart.SeriesCollection(1).ApplyDataLabels
.Top = positionY
.Left = positionX
End With
End Sub
当我第一次调用它时它工作得很好,但是当我想创建第二个图表时,我收到以下错误:
运行时错误“1004”:应用程序定义或对象定义错误
错误发生在这一行:
设置 newChart = ActiveSheet.Shapes.AddChart
我希望你们能帮助我。 提前致谢
编辑:
子的第一次调用:
CreatePieChart "A1:B6", "first", 10, 200
第二次调用:
CreatePieChart "A1:A6,D1:D6", "second", 10, 400
【问题讨论】:
-
你能把不同的调用添加到
CreatePieChart,看看每次都传递了哪些参数吗? -
你的代码对我来说很好。