ChartObjects

  • Thread starter Thread starter Scooter
  • Start date Start date
S

Scooter

Why does this work

ActiveSheet.ChartObjects("1020").Activate

but this doesnt

Dim ChartName(12) As String
ChartName(0) = "1020"
I = 0
ActiveSheet.ChartObjects(ChartName(I)).Activate
 
works for me, I have a DIM for I too ...

Sub ShowMessage()
Dim ChartName(12) As String
Dim i As Long
ChartName(0) = "Chart 1"
i = 0
ActiveSheet.ChartObjects(ChartName(i)).Activate

End Sub


try
?ActiveSheet.ChartObjects(1).Name
in the immediate window to check that "1020" is correct - i assume so since
you said so, but safe to check
 
Hi,

If you have xl2007, including SP2, then this is a bug, which I have reported
to MS.

If the chartobjects name is a numeric string it appears it gets converted to
a true numeric value and then used to Index the chartobjects collection.
So it is actually treated as if you had written this,

ActiveSheet.ChartObjects(1020).Activate

Only work around is to use AlphaNumeric names for your chart objects.

Cheers
Andy
 
Back
Top