明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 852|回复: 0

刚刚学VBA,这段代码看了好久不懂,有没有朋友能给详细地讲解一下,多谢了。

[复制链接]
发表于 2014-12-7 15:52:56 | 显示全部楼层 |阅读模式
本帖最后由 834764420 于 2014-12-7 17:52 编辑

Sub Main()
Dim ss As AcadSelectionSet
Dim i As Integer
Dim PickFirstSSet As AcadSelectionSet
Dim Ent As AcadEntity
Dim Basepnt As Variant
On Error Resume Next
Set acadApp = GetObject(, "AutoCAD.application")
ForceForegroundWindow acadApp.hWnd
acadApp.SelectionSets("PICKFIRST").Delete
Set PickFirstSSet = acadApp.PickfirstSelectionSet
If PickFirstSSet.Count = 0 Then
retry:
acadApp.ActiveDocument.Utility.GetEntity Ent, Basepnt, vbCrLf & "选择对象:"
If Ent Is Nothing Then
i = MsgBox("未选择到对象,是否继续选择?", vbYesNo + vbQuestion, "矿井巷道及瓦斯流监测可视化系统")
If i = 7 Then
End
Else
GoTo retry
End If
End If
If Err <> 0 Then
Err.Clear
End If
End If
Handle = Ent.Handle
sql = "select * from kj_mvgv where enthandle= '" & Handle & "'"
Call CreateDb_Mvgv
Call GetStrMvgv(sql)
If Rst.RecordCount = 0 Then
ForceForegroundWindow frmTime.hWnd
frmTime.Hide
MsgBox "数据库中没有该条巷道!" + vbCrLf + "请先在矿井巷道可视化系统中添加该巷道!", vbOKOnly + vbExclamation, "矿井巷道及瓦斯流监测可视化系统"
i = MsgBox("是否继续查询其他巷道?", vbYesNo + vbQuestion, "矿井巷道及瓦斯流监测可视化系统")
If i = 7 Then
End
Else
GoTo retry
End If
End If
ForceForegroundWindow frmTime.hWnd
End Sub
通过本模块的设计将实现在通风系统图上用鼠标选取巷道,然后从矿井巷道可视化数据库中读取巷道名称及编号,根据巷道名称分别在风网解算数据库和瓦斯浓度监测数据库中读取相应的数据,实时显示瓦斯浓度及曲线,并可将数据提供给瓦斯流分析系统进行计算分析。通过此模块可实现与矿井通风系统图的交互式操作。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 10:33 , Processed in 0.152237 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表