我正在尝试编写一个程序,从excel电子表格中获取值并将它们放入用户表单的图表中 . 我正在使用Excel 2011,并且我已经下载了Microsoft OWC 10.0的副本以允许添加图表 . 我的代码如下:
Private Sub UserForm_Initialize()
Dim M As Integer Dim N As Integer
使用UserForm1.ChartSpace1
M = .Charts.Count
If M = 0 Then GoTo COMEHERE Else GoTo Finish
COMEHERE:.Charts.Add With .Charts(0)'创建一个条形图 . .Type = chChartTypeXYScatterLine
' Add data series to the chart.
N = .SeriesCollection.Count
If N = 0 Then GoTo COMEHERE1 Else GoTo Finish
COMEHERE1:
.SeriesCollection.Add
'Worksheets("Sheet1").Range("D1").Value = 1 ' test to check how far program gets
' Set the properties of the first data series.
With .SeriesCollection(0)
.SetData chDimSeriesNames = Worksheets("Sheet1").Range("A1").Value
.SetData chDimXValues = Worksheets("Sheet1").Range("A3:A12").Value
.SetData chDimYValues = Worksheets("Sheet1").Range("B3:B12").Value
End With
.HasLegend = True
完:
End With
以End Sub结束
M和N整数是最初将代码编写为私有子ChartSpace1_Click()的宿醉,我每次单击鼠标时都会得到一个新的图表和系列 . 列A3:A12和B3:B12中的值仅为1到10
当代码到达.setData函数时,它会崩溃(编译器错误 - 参数不是可选的) . 我已经在网上看到了类似的这个代码示例,人们显然已经解决了这个问题,但我无法弄明白或者让他们的代码工作 .
这段代码的目的是进入一个更大的程序,我正在编写,以显示基于用户输入的各种科学图表 .
非常感谢人们的帮助
Ĵ
1 回答
您可能会发现这种方法更容易:Displaying A Chart In A Userform . 无需OWC或其他添加的库 . 它是为Windows版本的Excel编写的,但您可以弄清楚如何使其在Mac上运行 .