无法在VB.Net中设置SeriesCollection.Values属性

我试图设置SeriesCollection.Values属性,但是,我得到错误“无法设置Series类的Values属性”。 我已经尝试过Google寻求可能的解决scheme,但还没有任何解决scheme。

我使用了xlNewApp.Sheets(“Synchronized Data”)。Range(“H2:H117”)来代替“Synchronized Data!!$ H $ 2:$ H $ 117”,但这也不起作用。

在我想要绘制的实际数据中键入一个数组(例如“= {58,77,65,106}”),我已经取得了一些成功,但是我想避免遍历所有数据来创build必要的数组。

任何帮助这个问题将不胜感激。

代码如下所示:

xlSheetCount = xlNewWorkbook.Worksheets.Count Dim chart As Excel.Chart = xlNewApp.ActiveWorkbook.Charts.Add(After:=xlNewWorkbook.Worksheets(xlSheetCount)) xlNewWorkbook.ActiveChart.Name = "Chart_Efficiencies" xlNewWorkbook.Sheets(xlSheetCount).name = "Chart_Efficiencies" xlNewApp.Charts("Chart_Efficiencies").Select() xlNewApp.ActiveChart.ChartType = Excel.XlChartType.xlXYScatter xlNewWorkbook.ActiveChart.SeriesCollection.NewSeries() With xlNewWorkbook.ActiveChart.SeriesCollection(1) .ChartType = Excel.XlChartType.xlXYScatter .Name = "HgT Removal Efficiency" .XValues = "'Synchronized Data'!$A$2:$A$117" .Values = "'Synchronized Data'!$H$2:$H$117" <----------- Problem Here End With 

更新:代码不会错误,如果该行是:

 xlNewApp.Sheets("Synchronized Data").Range("H2:H15").Value 

当H15变成H16时,我再次得到错误

如果您replace这些行,它是否工作:

  .XValues = "'Synchronized Data'!$A$2:$A$117" .Values = "'Synchronized Data'!$H$2:$H$117" <----------- Problem Here 

有了这个:

 .XValues = Sheets('Synchronized Data').Range("$A$2:$A$117") .Values = Sheets('Synchronized Data').Range("$H$2:$H$117") 

我知道这是旧的,而不是主题,但我一直在寻找这个很长一段时间…和谷歌给这个链接,所以我只是把那里,希望它会帮助别人..

  .(X)Values = New Object() {value1, value2, etc..}