View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Chip Pearson Chip Pearson is offline
external usenet poster
 
Posts: 7,247
Default Loop through charts

Sandy,

Charts that reside on a worksheet (rather than being Chart Sheets) are
wrapped on in a ChartObject object. One child of the ChartObject object is
the Chart object. Try something like:

Dim ChtObj As ChartObject
For Each ChtObj In Worksheets(1).ChartObjects
Debug.Print ChtObj.Name, ChtObj.Chart.Name
Next ChtObj


--
Cordially,
Chip Pearson
Microsoft Most Valuable Professional
Excel Product Group
Pearson Software Consulting, LLC
www.cpearson.com
(email on web site)



"Sandy" wrote in message
...
I have a situation where I would like to loop through all the charts on a
sheet and if a condition is true, hide them.
Can't get it right though!

My attempt - in Sheet_Activate

Dim ch as Chart
If Range("D9").value=0 then
For each ch In Sheets("MySheet")
ch.Visible=False
Next
Else
......................
End If

Sandy