View Single Post
  #2  
Old January 14th, 2009, 06:18 PM posted to microsoft.public.visio.general
AlEdlund[_2_]
external usenet poster
 
Posts: 76
Default VBA - removing object from layer


shapes often bring along a default layer with them. I usually add something
like this just after
I drop them on the page

visShape.CellsSRC(visSectionObject, visRowLayerMem,
visLayerMember).FormulaForceU = """"""

hth,
al


wrote in message
...
I am using the following macro to selectively add connectors to a
specific layer. There is a complication though: every connector on my
page belongs to a layer called 'connector', which I don't want. I want
to somehow remove everything from that layer without deleting the
shapes, or remove every shape from that layer.

Is there a variation of this code that will remove something from a
layer? I have tried many permutations but with no success. Thanks in
advance!

---

Public Sub MoveToLayer()

Dim objShps As Visio.Selection, objShp As Visio.Shape
Dim objLayers As Visio.Layers, objLayer As Visio.Layer
Dim i As Integer

'get the Selection
Set objShps = Visio.ActiveWindow.Selection

'get the layers collection
Set objLayers = Visio.ActivePage.Layers
Set objLayer = objLayers("Shapes")

For i = 1 To objShps.Count
Set objShp = objShps(i)
objLayer.Add objShp, 0
Next i

End Sub