2013-11-21 23 views
0

我试图记录一个宏以将选定的形状从一个Visio图层移动到另一个图层。记录的宏只适用于原始形状。将形状移动到不同的图层

我发现这个网站的代码用于将选定的形状分配给层

Dim myLayer As Visio.Layer 
Set myLayer = Application.ActiveWindow.Page.Layers.Add("Layer1") 
myLayer.Add Application.ActiveWindow.Selection(1), 1 

但我也希望从现有的层,称为层0

Dim myLayer As Visio.Layer 
Set myLayer = Application.ActiveWindow.Page.Layers.Remove("Layer0") 
myLayer.Add Application.ActiveWindow.Selection(1), 1 
移除所选的形状的一例

我正在跳跃,我可以替换.Add和.Remove,但这并不起作用。

回答

0

我得到了帮助。我所要求的非常简单,我把.remove参数放在错误的行上。修正版现在可以运行

' to add selected ojbect to Layer1 
Dim myLayer As Visio.Layer 
Set myLayer = Application.ActiveWindow.Page.Layers.Add("Layer1") 
myLayer.Add Application.ActiveWindow.Selection(1), 1 


' to remvoe selectec ojbected from Layer0 
Dim RemoveLayer As Visio.Layer 
Set RemoveLayer = Application.ActiveWindow.Page.Layers.Add("Layer0") 
RemoveLayer.remove Application.ActiveWindow.Selection(1), 1