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()
- e6 E" V7 x5 Z! [; H) P5 PDim work As Workspace , Z$ Z/ c& S2 g
Dim new As Database
% l8 j( S! s) S  [; hDim elem As Object
$ s5 t1 ~( [- t9 `6 g9 @: M3 HDim rs As Recordset # n3 X, U4 J' E
Dim RowNum As Integer
3 _4 X) }( d( N) wSet work = DBEngine.Workspaces(0)
; o# \- k9 e5 \- TDim dbs As Database
( {9 |1 g( Q- G6 ^Dim tdfNew As TableDef + |; E5 m3 h3 d' j
Dim tdf As TableDef
6 M: Q% t# A3 rDim dbsname As String
, Y4 w6 W$ ]9 j0 q0 o6 `/ w4 eDim array1 As Variant 5 k7 w* C5 H. ~/ _
Dim array2 As Variant ‘声明所需的变量及类型
- z1 `$ u  t. ^# S/ mdbsname = “D:\材料表.mdb”
& D' q" [; f; b, n; M$ X‘声明Access数据库写到哪一个文件 6 l% @2 |( B( v) ?, T
On Error Resume Next
" Q# Q0 x% h* cSet dbs = work.CreateDatabase(dbsname, _ 0 }7 p$ {' T: t; I, B. m- w$ o" }
dbLangGeneral)
% M" J* R( g# i$ n# CIf Err Then
" P: C) C9 F& u6 u7 M9 z7 S4 a5 @# OKill (dbsname) ( h5 i" k: D& g1 Y7 R3 {7 r
‘发现要写入的Access数据库文件已存在就将其删除
3 o7 I9 _5 `- Q9 |0 T6 N6 ySet dbs = work.CreateDatabase(dbsname, _ / ~! x/ Y" E7 N, }) z. q, v
dbLangGeneral) 0 v0 A% }# ?' j9 L5 I
End If
% X: P3 j2 p4 S: N6 g& N  cSet tdfNew = dbs.CreateTableDef
, b: M$ N% z- I% z(“电气 _材料明细表”) " \' y% C0 a0 a3 Z& ~- z
‘建立一个名为电气材料明细表的表 ( ~& \8 ?0 n4 _: `& L1 Y
RowNum = 0 ) U7 w8 I9 Q! ^/ E" r0 K; |
Dim Header As Boolean
' s; ]: M# l8 J9 o' i  e$ hHeader = False
( Z, Y1 c' y( z/ BFor Each elem In ThisDrawing.ModelSpace 9 w9 Y+ N7 _0 \# g7 D5 r
‘在CAD模型空间,查找所有图形对象
+ T1 T; x6 ]* Y$ ~* l0 C. fWith elem / Y4 w' l; ]) R
If StrComp(.EntityName,_
. [3 F( x; E4 N  ^“AcDbBlockReference”, 1) = 0 Then : J2 k$ Z& q0 E0 a% j
If .HasAttributes Then 4 X: n! q4 c- Q" q; x2 F
array1 = .GetAttributes 4 l$ }* z5 P2 b6 R
array2 = .GetConstantAttributes ; n/ I' E+ f6 {' f- @
‘设置array1指向图形对象的属性 - j, w% A7 X" a1 P9 o( I
‘设置array2指向图形对象的固定属性
# W4 q, {7 n$ s0 FFor Count = LBound(array2) To _ ! o! |5 x3 r3 h& b
UBound(array2)
) _3 O( e% B3 K6 B$ nIf Header = False Then
, p% G: L+ f7 I; S) d5 e: @If StrComp(array2(Count).EntityName, _
% a; B7 c- G9 a  h5 c& P7 d“AcDbAttributeDefinition”, 1) = 0 Then 5 ~  D( S: u$ x+ V9 f  U' g5 g
tdfNew.Fields.AppendtdfNew._ 2 w3 x' L7 q3 l) U6 P
CreateField(array2(Count).TagString, dbText)
  a; Q- r2 \8 Z4 l. t0 {; n' ~$ ^4 eEnd If
5 u6 O) W2 q8 x  s  B3 q5 {4 K‘读出属性值读出,作为Access数据库表的标题 - C5 A# Q, ?  s. H; P4 y
End If 4 }- F7 T, ?  Z; L; k$ y
Next Count 9 @, u8 m4 h% W1 U0 o* @) e- H8 l* }5 q1 W
For Count = LBound(array1) To _ 3 h! ?6 X, J8 J3 X; s9 _) k7 o) V) d4 v
UBound(array1)
" F5 u8 {' u* {8 r* d, {; [/ o; OIf Header = False Then * j, o0 M+ D. p% G" \: r/ j9 D; V
If StrComp(array1(Count).EntityName, _ + J* s6 x3 e2 F- v
“AcDbAttribute”, 1) = 0 Then 7 d$ H; J9 i4 m; _3 ?$ L: k3 Y/ S! e
tdfNew.Fields.Append tdfNew. _
: Y# [7 p  L9 j  R/ GCreateField(array1(Count).TagString, dbText)
+ A) ~. ~4 E5 `End If ; `* u% n* l( `2 [
End If 2 I3 q8 @, d* k, q; {
Next Count ! j* q9 y" Q9 E: ~' S
If Header = False Then
2 g2 H7 v7 K' d5 W# {dbs.TableDefs.Append tdfNew
/ a6 @" P& ~/ u/ ]Set rs = dbs.OpenRecordset
' L: w& y/ Y( M' x* A( M  |$ c(“电气材料 _明细表”, dbOpenTable) ‘打开记录 4 V7 x- L7 C7 J  `' x
End If
* K: Z' D5 c+ J( T% GRowNum = RowNum + 1 3 p3 O7 g8 v' C% W! K; i* i
rs.AddNew ‘增加一笔新记录 1 E! z$ ^4 S/ [/ k* f4 h
For Count = LBound(array2) _ * h$ \3 v0 z* H; Z
To UBound(array2)
  ?' R3 x9 V9 u7 g* Lrs(Count).Value = array2(Count).TextString
0 @1 N5 q3 e. j* uNext Count ‘读固定属性值 6 A( A3 K* _! g1 P) e2 a
For Count = LBound(array1) To _ 9 W% L0 a# b' c; O
UBound(array1)
7 n' L# Z7 [, c2 |, j% O. Ors(UBound(array2) + Count + 1).Value = _ 1 S% R0 G, N! ~
array1(Count).TextString ; H( M+ v" M2 O
Next Count ‘读输入属性值
  _( Q  q3 [$ f+ z6 B. ?rs.Update ‘增加新记录修改结束
# Y! L4 {2 l$ sHeader = True
; W- L7 ?, M8 g' ?: F) [" s0 M% O/ iEnd If
" C# _+ i+ y1 c/ x  R( _End If , c& Q. _6 c; u3 S
End With
  h2 J2 C3 d/ z& i5 \5 ^6 fNext elem ) b% M' ^7 i2 e3 Z2 W% [' e, G; R
rs. Close ‘关闭记录,释放资源
8 Q% A4 a+ F. C& R. O1 K/ hdbs.Close ‘关闭数据库,释放资源
2 C9 B1 p& {2 w4 Y/ u. fEnd Sub
发表于 2009-1-6 13:50 | 显示全部楼层
赚钱中
发表于 2009-1-6 21:17 | 显示全部楼层
thank a lot3 r. t0 a3 x& `! Z
真是太好了
3 I: P1 F7 f; V: K這就是我要的 ^^
发表于 2010-5-11 23:13 | 显示全部楼层
好用吗?有谁下载了?
发表于 2010-8-24 19:08 | 显示全部楼层
学习学习!
发表于 2010-10-25 14:37 | 显示全部楼层
先看看看再说
发表于 2011-2-21 05:48 | 显示全部楼层
下来看看先,谢谢了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-2-9 10:49

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

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

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