我的问题是如上所述,指定的维度对当前图表类型无效。
但是这里奇怪的是我在两个不同的文件上使用了相同的代码而且只在两个文件中的一个上工作,这是在Excel 2010上完成的。例如我在文件a.xlsm中使用它它的工作原理罚款做它应该做的事情。但是当我在文件b.xlsm中使用它(从.csv文件转换)时,我不断收到此错误,并且运行时错误为'-2147352565(8002000b)'。
我的代码如下:
Sub AddChartObject()
Dim Cht As ChartObject
Set Cht = ActiveSheet.ChartObjects.Add _
(Left:=300, Width:=375, Top:=100, Height:=225)
Cht.Chart.SetSourceData Source:=Sheets("Sheet1").Range("B2:B10")
Cht.Chart.ChartType = xlXYScatterLines
Worksheets(1).ChartObjects(1).Activate
ActiveChart.HasTitle = True
ActiveChart.ChartTitle.Text = "Testing"
End Sub
我从这里找到了它:http://peltiertech.com/Excel/ChartsHowTo/QuickChartVBA.html#topofpage
错误一直指向这一行
myChtObj.Chart.SetSourceData Source:=Sheets("Sheet1").Range("B2:B10")
在网站上有另一个类似的问题VBA Excel: The specified dimension is not valid for the current chart type我确实尝试过发布的解决方案,但它确实没有用,所以如果有人能指出我正确的方向,我们将不胜感激。
答案 0 :(得分:1)
如果您使用excel打开csv文件,则表单名称可能不是" Sheet1"但是csv文件的文件名。尝试
Source:=Sheets(1).Range("B2:B10")