Public Sub QuickLauch()
ChartsDataSource(ActiveSheet).Select
End Sub
Public Function ChartsDataSource(ByVal Wsh As Worksheet) As Range
Dim k As Long, kPrim As Long, Addr As String
With Wsh
For k = 1 To .ChartObjects.Count
With .ChartObjects(k).Chart
For kPrim = 1 To .SeriesCollection.Count
With .SeriesCollection(kPrim)
Addr = Replace(Replace(Replace(Replace(.Formula, "=SERIES(", vbNullString), Wsh.Name & "!", vbNullString), "," & kPrim & ")", vbNullString), "$", vbNullString)
If Not ChartsDataSource Is Nothing Then
Set ChartsDataSource = Application.Union(ChartsDataSource, Wsh.Range(Addr))
Else
Set ChartsDataSource = Wsh.Range(Addr)
End If
End With
Next kPrim
End With
Next k
End With
End Function