Here's the solution that I came up with. Is there a better way?

vb Code:
  1. Public Sub setSeriesLength()
  2.  
  3.         Dim oShtData As Excel.Worksheet
  4.         Dim oSeries As Excel.Series
  5.         Dim rng As String
  6.         Dim tRng As String
  7.         Dim tempRng As String
  8.         Dim strAlpha() As String
  9.  
  10.         oShtData = CType(oExcel.Workbooks(1).Worksheets("data"), Excel.Worksheet)
  11.         Dim rows As Integer = oShtData.UsedRange.Rows.Count
  12.         tRng = "A2:A" & rows
  13.         rng = ""
  14.  
  15.         For Each oCht As Excel.Chart In oExcel.Workbooks(1).Charts
  16.             Dim cnt As Integer = CType(oCht.SeriesCollection, Excel.SeriesCollection).Count
  17.             rng = ""
  18.             For i As Integer = 1 To cnt
  19.                 oSeries = oCht.SeriesCollection(i)
  20.                 tempRng = CType(oCht.SeriesCollection, Excel.SeriesCollection).Item(i).Formula
  21.                 strAlpha = tempRng.Trim.Split("$"c)
  22.                 If strAlpha(0).ToLower.Contains("data") Then
  23.                     tempRng = strAlpha(UBound(strAlpha) - 1) & "2:" & strAlpha(UBound(strAlpha) - 1) & rows
  24.                     If (Len(rng) > 0) Then
  25.                         rng = rng & "," & tempRng
  26.                     Else
  27.                         rng = tempRng
  28.                     End If
  29.  
  30.                     oSeries.Values = oShtData.Range(rng)
  31.                     oSeries.XValues = oShtData.Range(tRng)
  32.                 End If
  33.                
  34.             Next
  35.             oCht.SetSourceData(oShtData.Range(tRng & "," & rng), Excel.XlRowCol.xlColumns)
  36.  
  37.         Next
  38.     End Sub