nhy12345678 发表于 2008-7-4 23:56:00

[已解决]VBA如何判断当前绘图是在模型空间还是图纸空间呢?

本帖最后由 作者 于 2008-7-12 13:55:08 编辑 <br /><br /> <p>有时候我在图纸空间绘图,但是使用VBA时没有反应才知道使用的是ThisDrawing.ModelSpace&nbsp; 而不是ThisDrawing.PaperSpace </p><p>有没有什么办法判断当前绘图是在模型空间还是图纸空间呢?如果实在模型空间的话,VBA就执行ThisDrawing.ModelSpace&nbsp;  而在图纸空间就执行ThisDrawing.PaperSpace 这样的话在什么空间中画图都不会有错误了。</p>

wylong 发表于 2008-7-7 19:46:00

Public Sub CheckActiveSpace()<br/>&nbsp;&nbsp;&nbsp; If ThisDrawing.ActiveSpace = acPaperSpace Then '当前为图纸空间<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "当前为图纸空间"<br/>&nbsp;&nbsp;&nbsp; Else<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "当前为模型空间"<br/>&nbsp;&nbsp;&nbsp; End If<br/>End Sub<br/>

nhy12345678 发表于 2008-7-10 14:11:00

<p>非常感谢<strong><font face="Verdana" color="#61b713">wylong </font></strong></p><p><strong><font face="Verdana" color="#61b713">这样写也可以,我发现了</font></strong></p><p>&nbsp;&nbsp;&nbsp; If ThisDrawing.ActiveSpace = 0 Then '当前为图纸空间<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "当前为图纸空间"<br/>&nbsp;&nbsp;&nbsp; Else<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "当前为模型空间"<br/>&nbsp;&nbsp;&nbsp; End If</p>

清风明月名字 发表于 2012-5-14 20:14:58

谢谢楼主,很有价值,
页: [1]
查看完整版本: [已解决]VBA如何判断当前绘图是在模型空间还是图纸空间呢?