Hiding graphics elements?

  • Thread starter Thread starter Blue Max
  • Start date Start date
B

Blue Max

How can we hide pre-selected groups of graphics elements with the touch of a
cell or control?

We have two distinct groups of rectangles with gradient fills. Depending on
the state (true/false) of a control, we want one or the other group of
rectangles to be hidden while the other is displayed. Can anyone give us
some direction on how we might accomplish this? Unlike controls, we don't
see where rectangles have a property for visibility or for hiding the
object.
 
Let's say one of your rectangles is named "Rectangle 1", then you can hide
it like this...

Worksheets("Sheet1").Shapes("Rectangle 1").OLEFormat.Object.Visible = False

Setting the above line to True instead of False will show the rectangle
again. In place of the name "Rectangle 1", you can use its Index number if
you know it...

Worksheets("Sheet1").Shapes(1).OLEFormat.Object.Visible = False
 
Rick,

Thank you for the helpful reply. However, isn't there a way to group these
objects and then select and hide/unhide the entire group at once? I know
that controls can be grouped, but not sure how graphic objects can be named
and then selected as a group so that a common property can be changed for
all objects at the same time?

Thanks,
Richard
 
I think you have to loop the Shapes collection and test to see which shapes
are rectangle and then apply the action to them...

Dim R As Shape
For Each R In Worksheets("Sheet2").Shapes
If R.AutoShapeType = msoShapeRectangle Then R.Visible = False
Next
 
Back
Top