QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
3天前
查看: 4058|回复: 7
收起左侧

[已解决] 怎样通过AUTOCAD的二次开发,将图纸中明细表转变成Eecel文件?

[复制链接]
发表于 2009-3-11 09:29:49 | 显示全部楼层 |阅读模式 来自: 中国湖北十堰

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
怎样通过AUTOCAD的二次开发,将图纸中明细表转变成Eecel文件?  ) O& [5 T, k8 ?6 m- Q  r3 F7 R$ v, M
    在现代的工厂管理中,AUTOCAD技术和数据库技术都得到广泛应用,但是,它们是两个平行的系统,在数据库系统中,不能直接读明细表中的数据。请问,有通过AUTOCAD的二次开发,将图纸中明细表转变成Eecel文件的实例吗?哪位朋友有的话,粘上来看看,让我们学习一下,好吗?先谢谢了!
发表于 2009-3-11 09:36:06 | 显示全部楼层 来自: 中国江苏无锡
这里有一个小软件可以做到:4 M3 S& O! b6 m8 K4 P5 J- ~
支持到06版,可以将cad中明细表中数据转到excel的小软件

评分

参与人数 1三维币 +2 收起 理由
wang2003 + 2 应助

查看全部评分

发表于 2009-3-11 09:44:43 | 显示全部楼层 来自: 中国北京
不用的
; {4 L: o, D- u8 c4 ^$ G; o/ ~% N, w6 I我用mdt2008可以直接就把明晰表输出,圆圈部分就是图表,可以选择- g  A# t) x+ m; }4 X0 i

' T: ^0 U6 N1 x[ 本帖最后由 我是流氓 于 2009-3-11 09:49 编辑 ]
未命名.JPG

评分

参与人数 1三维币 +2 收起 理由
wang2003 + 2 技术讨论

查看全部评分

 楼主| 发表于 2009-3-11 10:44:06 | 显示全部楼层 来自: 中国湖北十堰
谢谢rongjian朋友,您的软件我试过了!可以达到转换的目的。1 i2 X- Q3 N; I( e$ Q, Z% W
mdt2008朋友的软件怎样下载啊?0 N; J' K+ w3 x- W# {
我想,如果有LISP 或VBA的程序就好了,就有可能把它开发的更完美一些。
发表于 2009-3-12 17:24:30 | 显示全部楼层 来自: 中国江苏南通
给一篇文章,里面有这方面的内容,希望对你有所帮助:; ?9 N# v2 s$ \9 E9 l# C8 ~
AutoCAD二次开发技术在工程图纸绘制中的应用5 y1 |7 x$ R6 S8 @
  1 前言
; |& R8 c3 o$ w9 H% Y, X  随着计算机知识的普及和应用,计算机在社会各个领域显示出其巨大的生命力和发展潜力,作为计算机应用的一个重要领域--计算机辅助设计(CAD),在工程绘图设计中发挥了巨大的作用,而作为CAD绘图设计的代表软件,AutoCAD又显示出了它不同凡响的一面,由于其友好的用户界面,以及允许用户进行二次开发的特点,使之愈来愈为广大工程设计人员所熟悉、掌握并开发应用于专业方面的绘图设计软件。掌握了AutoCAD的二次开发技术,可以充分发掘AutoCAD的潜力,简化了绘图程序,在工作中能够事半功倍,大大提高工作效率。4 B1 s: W  {; w1 W7 M
  本文通过作者在最近几年的计算机辅助设计和绘图工作中应用AutoCAD进行二次开发的一些经验,分别利用几个实例程序来说明AutoCAD二次开发技术在工程图纸绘制中的应用,内容包括以下几个部分:
# G8 c8 j9 N9 t8 @* e( a  (1) 以多种图象文件格式实现对CAD图象屏幕的"高保真"的保存,并以此为基础建立图纸目录库,以便于今后对专业图纸的查询。! u3 K5 A/ ~+ f7 v. v. `6 E0 Z
  (2) 利用对话框编程语言(DCL)来建立特殊字符编辑器,扩充AutoCAD的字符集。
5 Y/ l: n" Q3 t6 _" n2 u% t" Q% f  B  (3) 利 用AutoCAD语言实现Excel与Auto-CAD间的通讯。作者衷心希望以此抛砖引玉,同广大的工程设计人员及CAD技术人员进行交流,互相取长补短,为CAD技术在我国的进一步推广及应用尽自己的菲薄之力。
6 w  D: f( x) S/ d8 x8 K# V9 M  2 用BMP位图文件来实现CAD图像屏幕"高保真"的保存1 q% P: [5 ]+ B+ {  h* f0 K& @
  目前对CAD图像屏幕进行保存的方法很多,时下流行的一些抓图软件如Grabber等均能用热键激活来捕捉CAD图像屏幕的画面,生成COM 文件,通过在DOS下运行该文件来达到显示的目的,这在工程图纸的查询,浏览与管理中确实为用户提供了不少方便。
& \) C: O/ q+ e9 ~/ g  我们在这里谨向读者提供一种新的方法,利用AutoCAD的一项鲜为人知的功能,通过配置打印机及光栅文件的输出,来实现CAD图像屏幕"高保真"的保存,通过此方法可生成256色的GIF,TGA,PCX,TIFF,BMP等各种图像格式的图形文件,可在DOS状态或WINDOWS下直接显示,也可在EXCEL,WORD, POWERPOINT,CORELDRAW等文字处理和图形图像处理软件中应用,兼容性极好,且图像清晰,背景色可随用户需要调整,也可运用于工程图纸的查询,浏览和管理,以及多媒体的图纸文档管理。
+ M7 ~6 b0 g5 G0 l) r# g9 u  下面我们以如何生成256色的BMP位图文件为例,来说明一下如何应用AutoCAD的这项功能。
) h* {: H5 k1 ^/ K0 [2 U  (1)进人AutoCAD,打开一张工程图纸,用Zoom E全屏显示。  @3 N+ q2 B/ z8 D7 W+ q
  (2)键人Config后回车,出现配置菜单(Configuration Menu),选择第5项配置绘图仪(Configure Plotter)后回车。6 K' m/ {  U, \. H
  (3)在随后出现的配置绘图仪菜单(Plotter Configuration Menu)中选择第1项增加绘图仪配置(Add a Plotter Configuration),回车。; x2 s/ b  n" O$ }
  (4)随后出现可用的绘图仪配置菜单(Available Plotters ),从中选择第21项光栅文件的输出(Raster File Export ADI4 .2- by Autodesk),回车,然后在支持模式(Support Models)中选择3项640X 350(EGA)模式,回车。
9 r6 d" P; L9 X$ y8 Q- @  R. h  (5) 接着将会出现光栅文件的格式菜单,用户可根据自己的要求选择其中的一项,在此我们选择第4项BMP图像格式(Microsoft Windows Device-Independent Bitmap( .BMP),回车。
: @, x6 v; A' y& G  (6) 然后选择颜色模式,在此处选择第3项256色模式(All 256 Standard AutoCAD Colours),并选择背景色,此处选用黑色,即0号色。
5 W  c+ q+ V! y- J4 W  (7) 接下来选项可用缺省设置,在最后的打印机描述(Plotter Description)中键入BMP PLOTTER后回车,保存设置并退出Config。便大功告成了。6 U" f& w- e- y! \* a
  照上述方法,一旦配置成功,这种打印的配置就永久的留在AutoCAD的打印机配置中了。读者可配置几种以上的光栅文件输出格式,并分别用GIFPLOTTER,PCX PLOTTER等命名,以备后用。* M4 z3 R& x- `) @9 x+ Z! \* d5 n
  在生成位图文件时,用户只需键人PLOT命令,选择BMP PLOTTER的打印机配置,再选择打印至文件(Plot to File),然后在Filename的对话框中键人完整的路径及文件名即可,其余步骤同一般的打印步骤相同,最后打印输出,一幅清晰的CAD图像屏幕的BMP位图文件便生成了。用此方法可做成图纸档案库,便于用户今后对图纸进行浏览和查询。
: ~8 J* d  ]; a, x* O# J  3 为AutoCAD设计特殊字符编辑- 对话框编制语言在AutoCAD中的应用实例
/ {  P; }# U- o  在AutoCAD中有几个常用的特殊字符表示方法,如士用%%P来表示,直径Φ用%%C表示等等,但终究数量太少,许多常用的符号,如平方,立方符号,μ、 ε、σ、ρ等,在AutoCAD的缺省定义字体Standard(由字形文件Romans. shx定义)中并无描述,因此在绘图过程中遇到要写这些字符时,常使人感到无从人手。
! Z2 Q% X" a. r' f0 w! O$ U  笔者在实践中发现只要通过修改字形源文件Romans.shp,增加用户自己定义的正文字形描述,便可解决上述的问题。特别值得一提的是26个希腊字母在Greeks. shp中已有描述,用户只需把这26个字母的字形描述Copy至Romans. shp中,就能在标准Standard字体状态下使用这些特殊字符,而不必每次更改字体。修改方法如下,用户可以先打开ACAD\SOURCE目录下的字形源文件Romans.shp,在文件末尾加上下列字形描述,字形编号从130开始至160,由于篇幅有限,这里仅列出笔者添加的平方,立方,根号,约等号及船肿符号的字型描述如下:& l# @: d$ L  q9 f
  * 130,27,ksquard /平方号描述/
  Y4 F. u) p' `! [! X$ T  2,8, 0, 18, 14, 8,一2,一21,1,10,3,一044, 01B,
& q9 Z% m8 M8 O" C% j6 ?' k  01A,58,01A,01B,060,2,8,4,一11,14,8,一6,7,0
' K; r! P! V4 \  o, K. n0 t7 c0 [  *1 31 ,25 ,ksquare /立方号描述/
% t" O& B7 i0 J! u$ w1 i  2,8,一3,21,14,8,一2,一21,1,060,8,一3,一4,10,
* J* d$ H) g8 d2 \  3,一025,2,8,8,一12,14,8,一6,7,0. ~5 c  t- \1 U1 y! ?
  *158,28,lcf /约等号描述/
  _' q9 Y. z4 W+ ]/ [& b# m9 U  4,21,3,6,2,14,8(一1,一6),024,1,02D,8, 0,6),' @2 R3 p) V+ }4 [7 {1 N. o
  2,8,(2,一6),14,8,(一3,一3),4,6,3,21,0
5 ?% ^/ O) U5 ~  F$ B% w  *159,37,lcq /根号描述/
7 Q6 |1 n# T3 a* @1 n  4,21,3,6,2,14,8,(一2,一6),020,1,064,2, 02D,+ y) p) L9 p' y$ r  V7 R, \
  1,10,1,004,02C,10,1,044,2,02B,1,020,2,020,# z* P" x" u9 i' P6 v# o6 `
  14,8,(一4,一3),4,6,3,21,0
# _- t0 ~% @$ }- G$ g5 @4 C; u3 w  *160,31,ksq /船舯号描述/4 d: A: P3 s8 m: L* N- n: E
  2,8,0,7,14,8,一2,一21,1,10,3,一044,01B,OIA,
5 x) B  y  Y; _& a  58,01A,01B,060,2,8,4,一11,14,8,一6,7,2,8,0,$ y  ~! {/ B: J
  11,0
8 N8 M1 u% x( a2 f  把以上这几段描述加人以后,再用。ompile命令编译成romans. shx文件,这里建议用户仍保留原来的romans.sh x,把新编译成的形文件以short.shx保存。+ i; P( L0 k: F& p, x( J
  在完成上述工作后,用户就可以方便地使用这些特殊字符了,但是每次使用时,需键人相应字符的ascii码,如此多的ascii码,用户要记住恐怕也非易事,因此笔者用AutoCAD中的对话框编制语言专门为此设计了一个特殊字符编辑器,上面所提及的特殊字符,均可以幻灯片对话框形式显示在用户面前,一目了然,便于选择,用户无需去背记相应的ascii码,就可把自己想要用的字符写到图形中。* t/ P5 L4 N. k8 Z5 d" j
  源程序由两部分组成,分别是对话框说明程序ddst. dcl和AutoLisp程序ddst. lsp,由于篇幅所限,这里不一一赘述,有兴趣的读者请与作者联系。
+ I: G& ]! L7 `1 B( w7 f) j  4 利用AutoLisp语言实现Excel与AutoCAD间的通讯- 浅谈AutoCAD下材料表格的制作  v4 h/ C9 ]$ i! M$ E$ T5 r
  众所周知,Excel是一个优秀的电子表格制作软件,其制作出来的表格风格多样,界面美观,而AutoCAD则是风靡世界的计算机辅助绘图软件,其绘图的精确度是任何绘图软件所不能比拟的,如果把这两者有机的结合起来,利用AutoCAD的绘图精度和Excel的完美格式,建立Excel和Auto-CAD之间的通讯联系,就可以在AutoCAD图形状态下制作出各种格式的表格。
' H; W3 X1 C0 M/ A% j  我们在实际工作中,运用AutoLisp编程,实现了Excel和AutoCAD之间的连接,下面就举例说明其用法。以下是一张材料表格的基本形式。
, D$ t# Z; n5 n& ]1 U  这样一张表格如果在Excel中制作可以说是不费吹灰之力,同时在表中填写代号,名称等也很方便,然而如果是在AutoCAD下,制作表格当然是不成问题,甚至可以作的更好,更精确,但是要往上面填写代号,名称等,而且又要格式整齐,上下左右对齐,用AutoCAD下的命令,不管是Text,还是Dtext,都不太容易。以下这两个Lisp程序可以帮助你解决这些问题。程序1用来在AutoCAD图形中按上述格式画出材料表,行数由用户自定。程序2把在Excel中已经制作好的表格内容,写到AutoCAD的图形中,格式整齐美观。6 |+ ~$ q$ |) r5 r+ S( y6 J
  用户可以先在Excel中按预定格式制作好材料表的模板文件,文件后缀名为.xlt,以后每次使用时,只要打开此模板文件,在上面填写好内容,以csv格式(逗号分格方式)存盘即可。在AutoCAD下运行程序2,便可把此材料表格中的内容写人图形中,此程序特别适用于大量材料表的编制书写工作,使用之后会倍觉得心应手。" |' `5 V( K) r8 _( F" j' l4 @
  程序清单如下:9 H- S$ J) O1 O# B
  程序1,T able.ls p
7 e! u. w7 T* Z$ C  b  程序2,L i st.ls p
3 c0 X% {2 I( a) d  5 结束语) y( M! c# }7 r2 U9 p
  以上只是我们对AutoCAD二次开发技术在工程上应用的一点切身体会,希望能对读者有所启发,并希望以此起到抛砖引玉的作用,促进我国的计算机应用技术蓬勃发展。
1 T4 l7 H$ N$ x4 M( y" n+ E2 q" d9 b* `* l# T8 m
[ 本帖最后由 rgyzgwh 于 2009-3-12 17:25 编辑 ]

评分

参与人数 1三维币 +3 收起 理由
2005llnn + 3 应助

查看全部评分

发表于 2009-3-13 22:52:48 | 显示全部楼层 来自: 中国安徽芜湖
这个我们用的浩辰cad可以方便的在excel与cad间转换明细表,
发表于 2009-3-14 08:30:47 | 显示全部楼层 来自: 中国浙江台州
学习了...
- _( k% i; ~1 Z, c+ I: s: Z  l' ^- o1 o" x6 T* \, ?
感觉现在的CAD版本都是改过的....
发表于 2009-4-4 16:02:30 | 显示全部楼层 来自: 中国辽宁大连
今日看帖胜读十年书!1 ]3 u) C: N! i" J5 u( v
感谢,分享!
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

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