comcu 发表于 2022-7-6 14:54:38

通过vba控制布局

你好
 
我一直在胡闹,它不会正常工作。
 
我正在尝试使用vba循环浏览布局。
 
我有以下代码,只要布局顺序正确就可以工作。我一移动布局,它就不能正常工作?
 

Dim objLayouts As AcadLayouts

Dim LayerNextNo As Integer


Set objLayouts = ThisDrawing.Layouts

LayerNextNo = ThisDrawing.ActiveLayout.TabOrder


ThisDrawing.ActiveLayout = objLayouts.Item(LayerNextNo)


 
我想通过说活动布局选项卡订单号为“1”来控制活动布局,然后转到布局选项卡号“2”,但我无法使其工作?
 
干杯
 
col公司

ML0940 发表于 2022-7-6 15:09:06

嗨,上校,
 
让我看看我是否理解你;您想按选项卡顺序(索引)编号输入布局,这是否成为活动布局?
 
这个订单会改变吗,还是固定下来了?
 
毫升

ML0940 发表于 2022-7-6 15:22:44

另外,是否要提示输入布局编号?

comcu 发表于 2022-7-6 15:38:46

嗨,ML,
 
是的,订单可能会更改。我设法得到一些代码来工作,但一旦你改变布局的位置,从他们的信的顺序,它把整个事情搞砸了。我找到了一些代码,将它们放回原来的顺序,然后我的代码可以工作,但这不是我想要的。
 
干杯
 
col。

Cannibal Smurf 发表于 2022-7-6 15:42:46

颠簸,也经过一些类似的,渴望看到一些回复这里。。。

ML0940 发表于 2022-7-6 16:01:35

Comcu,
如果你愿意,发布你的代码,如果是VBA,我可以看一下。
 
此外,在acad中。dvb文件中,有一个事件将在布局更改后触发。因此,如果您将第二位代码放入该事件模块,那么在您完成任务后,布局将为您重新编制索引。
 
为了看看这个建议是否真的有效,或者是另一个建议,最好看看代码。
 
毫升
页: [1]
查看完整版本: 通过vba控制布局