CAD设计论坛

 找回密码
 立即注册
论坛新手常用操作帮助系统等待验证的用户请看获取社区币方法的说明新注册会员必读(必修)
12
返回列表 发新帖
楼主: gysheng

cad统计材料表

[复制链接]
发表于 2008-10-17 16:08 | 显示全部楼层
下载不了了????
发表于 2008-10-17 16:10 | 显示全部楼层
怎么下载啊,为什么下不了?
发表于 2008-10-20 15:19 | 显示全部楼层
不知道是做什么用的
发表于 2008-12-10 13:25 | 显示全部楼层

顶起

请用过的同志说明一下怎么用
发表于 2009-1-6 13:04 | 显示全部楼层
Sub list()
  K6 B$ V7 s6 ADim work As Workspace 2 d- v+ a5 _" k+ d" T) ]/ d$ f
Dim new As Database   q$ g7 Q4 T3 x% ]% H4 ^+ x
Dim elem As Object
# {# m1 m* {- J1 \( F) dDim rs As Recordset ; m( Y+ H- Y9 m0 j
Dim RowNum As Integer
, ~& F5 x: H' YSet work = DBEngine.Workspaces(0)
" a# b; F) a" |# Z( W% Q8 S% @) MDim dbs As Database
0 S# }" S7 `1 V* U) D1 q# [( W2 UDim tdfNew As TableDef
/ X2 X: ]" g: UDim tdf As TableDef
9 C/ N& l) J+ @" aDim dbsname As String
6 y( Y0 H" B8 i% K$ Q) f0 @Dim array1 As Variant
* H5 b, l! k3 x+ p8 PDim array2 As Variant ‘声明所需的变量及类型 8 W6 z2 f& k5 ?
dbsname = “D:\材料表.mdb”
* z) f- d& t4 e‘声明Access数据库写到哪一个文件
- d* V' d9 R; x! XOn Error Resume Next 5 f' d% ?& D5 j
Set dbs = work.CreateDatabase(dbsname, _ ) O$ |: E8 {& C5 j0 f3 n, n% a
dbLangGeneral) % ?8 c2 U/ x( r+ N+ j: G# ^( K
If Err Then
' x& T4 I# j, ]% w. I- RKill (dbsname)
  [' q, c9 J9 l‘发现要写入的Access数据库文件已存在就将其删除
3 x, v3 W' l0 }" l* H; D" PSet dbs = work.CreateDatabase(dbsname, _ $ J' L  a& j( N0 i
dbLangGeneral) - s7 j) e# v7 k- W0 A8 i
End If
7 T2 i% f) P: A7 f" S+ t! PSet tdfNew = dbs.CreateTableDef + B  a' [! h0 C9 y
(“电气 _材料明细表”)
* Q% ]1 Y3 F. }‘建立一个名为电气材料明细表的表
" y& e2 y1 u9 |- F5 R6 wRowNum = 0
' M+ d9 T" Z& ?# r* EDim Header As Boolean
; w$ S" {1 |6 T5 [Header = False
& R4 `* n. }( l3 V6 \For Each elem In ThisDrawing.ModelSpace 9 a) g, k9 d1 B2 @8 b7 p4 u* u
‘在CAD模型空间,查找所有图形对象
2 f( a8 C' ?  Q4 aWith elem
/ i/ i8 t$ W  o: V7 M1 C' QIf StrComp(.EntityName,_ % Q4 L3 Z' e# p2 d0 J: H. O
“AcDbBlockReference”, 1) = 0 Then + }( h! [9 R: n5 v7 G# B$ K. D
If .HasAttributes Then
4 i, W. F& N/ _( W3 A' o6 m0 qarray1 = .GetAttributes
$ C6 ~3 }6 e1 ]/ v( m; |array2 = .GetConstantAttributes
& s, C9 B2 K! L/ H# e) a‘设置array1指向图形对象的属性
! k  S- \! r0 m. L0 t+ o4 \‘设置array2指向图形对象的固定属性 : p$ k% `7 e  x  u5 l# m, j: ^
For Count = LBound(array2) To _
5 t4 |4 x3 f$ S5 z/ E/ l7 ?7 bUBound(array2) 4 k, @: v7 x0 H4 i- _
If Header = False Then 8 w% O8 a3 C$ b8 o  t; W" c
If StrComp(array2(Count).EntityName, _ " |! t" I1 p- ~
“AcDbAttributeDefinition”, 1) = 0 Then
0 @/ o% O2 n! {! Z2 n' A1 P' {tdfNew.Fields.AppendtdfNew._
& K' V# k6 u- x# }# H  B5 YCreateField(array2(Count).TagString, dbText) 0 N8 K4 ^9 G& C  n7 x' U+ ^
End If - [- D# |8 [- a3 U: E+ c  [7 O
‘读出属性值读出,作为Access数据库表的标题 ' r* [7 E; ?2 ?2 U/ n" |
End If 6 D* w; r9 ?* B" x- c% D2 c, e
Next Count # v: r) s' C7 S& B$ r, N/ m
For Count = LBound(array1) To _ # w6 s  R! G# I" U
UBound(array1) ) ?8 R: @9 \- s# ?. u* I. V
If Header = False Then : K( ^% ~. F; J2 n
If StrComp(array1(Count).EntityName, _ , e! X5 l- {2 B
“AcDbAttribute”, 1) = 0 Then 9 M% c% L! X# O8 r/ `! m: w
tdfNew.Fields.Append tdfNew. _ # ~$ C/ G$ b  ~% j
CreateField(array1(Count).TagString, dbText)
9 S& }# C, I: ?- O1 U$ z: a4 j7 J; gEnd If & }; D7 k) }6 ]8 Y" d( X: c
End If 5 O; C; O/ G' Q: E4 f( Z5 W
Next Count
9 Q! x* u" V9 u+ a; L% h7 f; [If Header = False Then . k; E' h8 f% ^7 t4 A4 u. O
dbs.TableDefs.Append tdfNew
4 b) ^- |" y  P  M% j& OSet rs = dbs.OpenRecordset
  O7 O5 T& G, ]9 Q/ U(“电气材料 _明细表”, dbOpenTable) ‘打开记录
3 O/ S/ U8 t& B5 A5 CEnd If : b. Z1 N+ J6 x: R3 M% h
RowNum = RowNum + 1
  o' n! g  C  D4 brs.AddNew ‘增加一笔新记录
8 ]" J; _0 I  Q' Y0 B3 VFor Count = LBound(array2) _
. y% ]& \5 ~; f, z$ X) i4 p! [) eTo UBound(array2) 9 d1 D2 T; N8 f' n
rs(Count).Value = array2(Count).TextString 4 F5 I( A6 {$ r( n& a# n/ o" u
Next Count ‘读固定属性值
/ f, p& A/ o5 A+ j' [- {  X2 j: JFor Count = LBound(array1) To _
! m7 Y& n; w4 j8 x: EUBound(array1) 9 p4 A% s# S& ^' ?8 o: E
rs(UBound(array2) + Count + 1).Value = _ * `0 H/ @4 G2 U& i
array1(Count).TextString
! A7 e) K) \2 C; X! r9 ZNext Count ‘读输入属性值
! H: g0 j8 K# q2 r$ I* h1 Jrs.Update ‘增加新记录修改结束 4 p; [) o" w: R2 G% N1 E
Header = True
, o9 |0 H6 _, zEnd If
3 V& v. D$ |) S( ^9 C4 REnd If / @. F. T/ C" d0 G! e
End With
- t* s( _  W& u1 k4 lNext elem
  G* X! ^# M! v1 krs. Close ‘关闭记录,释放资源
9 I- \9 N% V7 _1 L$ |; [/ b% ~dbs.Close ‘关闭数据库,释放资源
3 |/ z; {" Z' p4 _2 F5 f4 m. }End Sub
发表于 2009-1-6 13:50 | 显示全部楼层
赚钱中
发表于 2009-1-6 21:17 | 显示全部楼层
thank a lot
: O" f9 G: {* U( s+ G( {真是太好了
2 ?! ]" x+ {, Y  g9 k) N這就是我要的 ^^
发表于 2010-5-11 23:13 | 显示全部楼层
好用吗?有谁下载了?
发表于 2010-8-24 19:08 | 显示全部楼层
学习学习!
发表于 2010-10-25 14:37 | 显示全部楼层
先看看看再说
发表于 2011-2-21 05:48 | 显示全部楼层
下来看看先,谢谢了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于|免责|隐私|版权|广告|联系|手机版|CAD设计论坛

GMT+8, 2025-9-10 08:53

CAD设计论坛,为工程师增加动力。

© 2005-2025 askcad.com. All rights reserved.

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