从Excel图表中提取数据

分类:代码, 博客 标签:,

Excel中,你创建的图表可能关联到另外的文件,因此常规方式你并没有办法得到这些数据,但是可以通过VBA来重新获取这些系列的数据,这里水文工具集给出一个VBA过程GetChartValues,使用这宏过程可以轻松提取图表中的数据。

首先添加一个工作表并且命名为”ChartData”,然后把下面的宏过程添加到工作簿,最后运行这个宏就可以提取Excel图表中的数据。

'================================
' 从Excel图表中提取数据
'
' http://www.cnhup.com
'================================
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


分类:代码, 博客 标签:,

发表评论

You must be logged in to post a comment.