2013-07-08 61 views
1

我試圖將單個單元格添加到圖表,以便只有滿足特定條件的單元格纔會添加到圖表中。將單個單元格添加到循環中的圖表範圍時出現錯誤「1004」

ChartXDataString = "=" 
ChartFuelDriveDataString = "=" 

For i = 0 To 5 

    If Range("AP" & FirstDataRow + i) <> "0" Then 

     If i = 5 Then 
      ChartXDataString = ChartXDataString & "'RAW FleetData'!$A$" & (FirstDataRow + i) 
      ChartFuelDriveDataString = ChartFuelDriveDataString & "'RAW FleetData'!$AP$" & (FirstDataRow + i) 
     Else 
      ChartXDataString = ChartXDataString & "'RAW FleetData'!$A$" & (FirstDataRow + i) & ";" 
      ChartFuelDriveDataString = ChartFuelDriveDataString & "'RAW FleetData'!$AP$" & (FirstDataRow + i) & ";" 
     End If 
    End If 
Next i 

ActiveSheet.ChartObjects("gFMP_TotalFuelLiters").Activate 
ActiveChart.SeriesCollection(1).XValues = ChartXDataString 
ActiveChart.SeriesCollection(1).Values = ChartFuelDriveDataString 

當我運行代碼的Excel引發以下錯誤:Run-time error '1004': Application-defined or object-defined error.

它這樣做就行了:ActiveChart.SeriesCollection(1).XValues = ChartXDataString

即使當我錄製宏添加單個細胞,圖表工作,直到我運行錄製的宏,它會引發錯誤。

幫助將不勝感激!

+0

錯誤提升時'ChartXDataString'的值是什麼? –

+0

我認爲問題在於,您無法將公式分配給'SeriesCollection對象'的'.values'和'.xvalues'屬性。嘗試使用'.Formula'屬性,但改變你創建'chartXDataString或CharterFuelDriveDataString變量'的方式。 –

回答

0

發現以錯誤格式記錄的宏記錄器。 正確的格式爲 「=」原始FleetData「!$ A $ 3;'原始FleetData'! ('RAW FleetData'!$ A $ 2,'RAW FleetData'!$ A $ 3,'RAW FleetData'!$ A $ 4)「 帶括號和逗號分隔符

相關問題