我想在excel vba中创建一个图表。在类模块的顶部,我声明了myChart 用这一行:
private myChart as chart
然后,在该类模块的子例程中,我使用以下行将myChart设置为新图表:
set myChart = ActiveWorkbook.charts.add
在set语句中,我收到此错误:
"运行时错误13:输入不匹配"
令人沮丧的是因为这个错误有时不会发生,而且,我能够在不同的类模块中使用相同的语句制作图表。
--- --- EDIT
我的课程模块(名为SandChart)如下。为了每个人的缘故,我把它修剪下来, 但当然错误仍然存在:
Option Explicit
Private myChart as Chart
Private chartname as String
Private Sub Class_Initialize()
chartname= "Sand Trends"
End Sub
Private Sub makeCoarseChart()
DisableScreenUpdates
eliminateOld
initChart
EnableScreenUpdates
End Sub
Private sub eliminateOld()
Dim chrt as chart
For Each chrt in charts
if chrt.name = chartname then
Application.DisplayAlerts=False
chrt.Delete
Application.DisplayAlerts=True
Exit For
End if
Next chrt
End Sub
Private Sub initChart()
Set myChart= ActiveWorkbook.charts.add
mychart.name= chartname
mychart.ChartType=xlAreaStacked
End Sub
在我的主模块中,我有以下行,它是起点 我的宏观点:
new SandTrends.makeCoarseChart
感谢您的帮助