Sub CreateConnection() Dim cnn As ADODB.Connection Dim rst As ADODB.Recordset Set cnn = New ADODB.Connection cnn.Provider = "Microsoft.jet.OLEDB.4.0" cnn.Open "C:\VBASample.mdb" Set rst = New ADODB.Recordset 'define the recordset rst.CursorLocation = adUseClient 'open the table rst.Open Source:="SELECT DISTINCT * FROM 序号", ActiveConnection:=cnn, CursorType:=adOpenForwardOnly, LockType:=adLockOptimistic, Options:=adCmdText rst.MoveFirst Dim i As Long Dim pt1(0 To 2) As Double, pt2(0 To 2) As Double ' 使用查询得到的数据创建直线 For i = 0 To rst.RecordCount - 1 pt1(0) = rst.Fields("横座标") pt1(1) = rst.Fields("纵座标") pt1(2) = rst.Fields("地面标高") pt2(0) = rst.Fields("上点横") pt2(1) = rst.Fields("上点纵") pt2(2) = rst.Fields("上点高") ThisDrawing.ModelSpace.AddLine pt1, pt2 rst.MoveNext Next i rst.Close rst.Open Source:="SELECT DISTINCT * FROM 序号", ActiveConnection:=cnn, CursorType:=adOpenForwardOnly, LockType:=adLockOptimistic, Options:=adCmdText rst.MoveFirst Dim Rad As Double ' 使用表中的数据绘制圆 For i = 0 To rst.RecordCount - 1 pt1(0) = rst.Fields("横座标") pt1(1) = rst.Fields("纵座标") pt1(2) = rst.Fields("地面标高") Rad = 0.01 ThisDrawing.ModelSpace.AddCircle pt1, Rad rst.MoveNext Next i rst.Close '使用表中的数据创建文字 rst.Open Source:="SELECT DISTINCT * FROM 序号", ActiveConnection:=cnn, CursorType:=adOpenForwardOnly, LockType:=adLockOptimistic, Options:=adCmdText rst.MoveFirst Dim textObj As Variant Dim textString As String Dim height As Double height = 0.1 For i = 0 To rst.RecordCount - 1 pt1(0) = rst.Fields("横座标") pt1(1) = rst.Fields("纵座标") pt1(2) = rst.Fields("地面标高") textString = rst.Fields("本点号") & rst.Fields("点类型") & rst.Fields("口径") & rst.Fields("备注") Set textObj = ThisDrawing.ModelSpace.AddText(textString, pt1, height) Next i rst.Close ThisDrawing.Application.Update End Sub 本点号 | 上点号 | 点类型 | 类型 | 埋深 | 管径 | 口径 | 管材 | 阀门类型 | 纵座标 | 横座标 | 地面标高 | 管顶高程 | 管底高程 | 所在地点 | 施工员 | 埋设日期 | 备注 | 使用状况 | 工程编号 | 权属单位 | 施工单位 | 测量单位 | 输送介质 | 上点纵 | 上点横 | 上点高 | 长度 | W47C9 | W47C10 | 弯头 | 3 | 1.82 | 600 | 600 | 钢管 | | 3091757.694 | 490173.231 | 7.365 | 5.845 | 5.245 | 铁路新客站站西路 | 孔建庆 | 2009/06 | 隐蔽点 | 运行 | 2010S038 | 温州水务集团公司 | 温州市四通建设工程有限公司 | 温州市经纬供水管线检漏有限公司 | 清水 | 3091756.171 | 490167.703 | 7.089 | 5.740600056 | W47C99 | W47C100 | 三通 | 3 | 1.81 | 600 | 600*200 | 球墨管 | | 3090759.626 | 489871.243 | 5.676 | 4.166 | 3.566 | 铁路新客站站西路 | 孔建庆 | 2009/06 | 隐蔽点 | 运行 | 2010S038 | 温州水务集团公司 | 温州市四通建设工程有限公司 | 温州市经纬供水管线检漏有限公司 | 清水 | 3090720.814 | 489863.26 | 5.638 | 39.62450097 | W47C100 | W47C101 | 连接点 | 3 | 1.75 | 600 | 600 | 球墨管 | | 3090720.814 | 489863.26 | 5.638 | 4.188 | 3.588 | 铁路新客站站西路 | 孔建庆 | 2009/06 | 隐蔽点 | 运行 | 2010S038 | 温州水务集团公司 | 温州市四通建设工程有限公司 | 温州市经纬供水管线检漏有限公司 | 清水 | 3090690.823 | 489857.983 | 5.552 | 30.4518342 | W47C101 | W47C102 | 连接点 | 3 | 1.84 | 600 | 600 | 球墨管 | | 3090690.823 | 489857.983 | 5.552 | 4.012 | 3.412 | 铁路新客站站西路 | 孔建庆 | 2009/06 | 隐蔽点 | 运行 | 2010S038 | 温州水务集团公司 | 温州市四通建设工程有限公司 | 温州市经纬供水管线检漏有限公司 | 清水 | 3090669.533 | 489854.471 | 5.496 | 21.57779831 | W47C103 | W47C102 | 三通 | 3 | 1.73 | 200 | 200*100 | 球墨管 | | 3090669.958 | 489851.419 | 5.451 | 3.821 | 3.621 | 铁路新客站站西路 | 孔建庆 | 2009/06 | 隐蔽点 | 运行 | 2010S038 | 温州水务集团公司 | 温州市四通建设工程有限公司 | 温州市经纬供水管线检漏有限公司 | 清水 | 3090669.533 | 489854.471 | 5.496 | 3.081777734 |
|