从Excel图表中提取数据
在Excel中,你创建的图表可能关联到另外的文件,因此常规方式你并没有办法得到这些数据,但是可以通过VBA来重新获取这些系列的数据,这里水文工具集给出一个VBA过程GetChartValues,使用这宏过程可以轻松提取图表中的数据。
首先添加一个工作表并且命名为”ChartData”,然后把下面的宏过程添加到工作簿,最后运行这个宏就可以提取Excel图表中的数据。
'================================
' 从Excel图表中提取数据
'
'
'================================
Sub GetChartValues()
Dim nRows As Integer
Dim X As Object
Counter = 2
nRows = UBound(ActiveChart.SeriesCollection(1).Values)
Worksheets("ChartData").Cells(1, 1) = "X Values"
With Worksheets("ChartData")
.Range(.Cells(2, 1), _
.Cells(nRows + 1, 1)) = _
Application.Transpose(ActiveChart.SeriesCollection(1).XValues)
End With
For Each X In ActiveChart.SeriesCollection
Worksheets("ChartData").Cells(1, Counter) = X.Name
With Worksheets("ChartData")
.Range(.Cells(2, Counter), _
.Cells(nRows + 1, Counter)) = _
Application.Transpose(X.Values)
End With
Counter = Counter + 1
Next
End Sub


