2016-07-22 5 views

Antwort

0

Sie TopLeftCell verwenden können und BottomRightCell ein Diagramm zwischen bestimmten Bereich zu finden.

Sub testChart() 
Dim oChart As Chart 

'/ Selecet the chart , if found in Range D4:F10 
Set oChart = findChart(Sheet1.Range("D4:F10")) 
If Not oChart Is Nothing Then 
    oChart.Parent.Select 
Else 
    MsgBox "No chart found." 
End If 

End Sub 

Function findChart(ByVal rngChart As Range) As Chart 

    Dim oChart  As Chart 
    Dim oChartObj As ChartObject 
    Dim wksChart As Worksheet 
    Dim rngCArea As Range 

    Set wksChart = rngChart.Parent 

    For Each oChartObj In wksChart.ChartObjects 
     Set rngCArea = Intersect(wksChart.Range(rngChart.Address), wksChart.Range(oChartObj.TopLeftCell, oChartObj.BottomRightCell)) 
     If Not rngCArea Is Nothing Then 
      Set oChart = oChartObj.Chart 
     End If 
    Next 

    Set findChart = oChart 

End Function 
+0

wenn diese Lösungen funktioniert markieren Sie es dann als beantwortet: http://stackoverflow.com/help/someone-answers, http://meta.stackexchange.com/questions/173399/how-to-upvote- On-Stack-Überlauf – cyboashu

Verwandte Themen