一种提取CAD图纸明细内容至Excel表格的方法

文档序号:8942844阅读:1619来源:国知局
一种提取CAD图纸明细内容至Excel表格的方法
【技术领域】
[0001]本发明属AutoCAD 二次开发领域,尤其涉及一种提取CAD图纸明细内容至Excel表格的方法。
【背景技术】
[0002]AutoCAD是由Autodesk公司开发的计算机辅助设计软件,在国内企业中得到了广泛运用。然而,工程技术人员在享受其所带来便利的同时,又必须花费大量时间来处理图纸中的文档信息。工艺路线文件是企业进行顺利生产的基础,其物料基本信息主要来源于图纸中的明细表。目前,明细表中的信息无法直接与外部文件进行传递,现常用的方法为根据图纸手动录入数据和利用软件进行自动化提取。由于实际图纸的多样性,利用现有软件提取出来的结果往往不尽人意,而手动录入数据不仅效率低,而且容易出错;因此,如何高效率、准确的提取出明细表信息显得极其重要。
[0003]有鉴于此,有必要提供一种提取CAD图纸明细内容至Excel表格的方法,以解决上述问题。

【发明内容】

[0004]本发明的目的是:为了克服现有技术缺陷,从而提供一种能从AutoCAD图纸中提取多种形式的明细内容至Excel表格的方法。
[0005]为了实现上述目的,本发明所采用的技术方案是:一种提取CAD图纸明细内容至Excel表格的方法,前提是CAD软件已安装VBA模块,其特征在于,该方法的具体步骤是:
1)在桌面新建Excel表格,在表格的第一行依次输入明细行各项对应的名称,将表格命名为“明细存放”;
2)打开CAD软件,在MicrosoftVisual Basic模式下插入过程及窗体,过程的功能是显示窗体,窗体为选择明细形式,保存并命名为acd.dvb文件,然后将其拷贝至CAD的安装目录下;
3)在CAD软件里新添命令按钮“提取明细”,并将该命令指向步骤2)中的插入过程;
4)提取明细:在CAD窗口点击“提取明细”,根据步骤2)中窗体提示进行选取,然后依次选取明细行所在区域的左下角点和右上角点,即实现明细行中的内容按照原始相对位置传递至“明细存放”表格中。
[0006]如上所述的提取CAD图纸明细内容至Excel表格的方法,其特征在于,若明细数据为本文格式,则其位置关系按如下公式计算:
xlsheet.Cells ((loc (I) - pointl (I) + H * k) \ (H * k) + i, I) = ENT.TextString
其中H为行高,k为图纸比例,i为当前表格中的行数;k = (point2(0) - pointl (0))/ X,X为图纸比例1:1时明细行总长。
[0007]本发明的有益效果:由于采用上述技术方案,本发明与现有技术相比具有如下积极效果:本发明涉及的提取CAD图纸中明细内容至Excel表格的方法考虑了明细形式的多样性及常用形式,同时保证明细内容整体实现“空间转移”,对用户的后续引用无影响,极大的提高了工作效率。
【附图说明】
[0008]图1是本发明提取CAD图纸明细内容至ExceI表格的方法的流程图。
[0009]图2是本发明的提取明细窗体。
【具体实施方式】
[0010]为了更好地理解本发明,下面结合实施例进一步阐明本发明的内容,但本发明的内容不仅仅局限于下面的实施例。本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样在本申请所列权利要求书限定范围之内。
[0011]如图1所示,本发明的提取CAD图纸明细表内容至Excel表格的方法,在已安装VBA模块的前提下,该方法的具体步骤是:
I)在桌面新建Excel表格,在表格的第一行依次输入目标图纸明细行各项对应的名称,如序号、代号、名称、数量,将表格命名为“明细存放”;对于同类图纸,无需每次新建此表格。
[0012]2)打开AutoCAD,在Microsoft Visual Basic模式下插入过程及窗体,见附图2。过程的功能是显示窗体,窗体为选择明细形式,其中,若明细数据为本文格式,则其位置关系按如下公式计算,
xlsheet.Cells ((loc (I) - pointl (I) + H * k) \ (H * k) + i, I) = ENT.TextString
其中H为行高,k为图纸比例,i为当前表格中的行数。
[0013]k = (point2 (0) - pointl (0)) / X,X 为图纸比例 1:1 时明细行总长。
[0014]保存并命名为acd.dvb文件,然后将其拷贝至CAD的安装目录下,该步完成后,提取明细时直接进入步骤4 )。
[0015]3)在AutoCAD里“工具”菜单下新添命令按钮“提取明细”,并将该命令指向步骤
2)中的插入过程;命令建好后,以后使用则无需重复创建。
[0016]4)打开目标图纸,点击“工具“提取明细”,根据弹出窗体的提示进行选取,本步骤以选择窗体中明细形式为“其它”为例,首先选择“其它”,然后再输入图纸比例为1:1时明细行高度值及其它各项的宽度值(若实际图纸与窗体中的各项不一致,则根据窗体中的序号依次输入即可)再点击“提取明细”按钮,然后依次选取明细行所在区域的左下角点和右上角点,即实现明细行中的内容按照原始相对位置传递至“明细存放”表格中,对于同类图纸,无需每次都输入数值,程序自动保存第一次输入的值。重复执行该步,即可提取其它图纸的明细,所有提取的明细数据保存在同一 Excel表格中。
[0017]最后应当说明的是,以上内容仅用以说明本发明的技术方案,而非对本发明保护范围的限制,本领域的普通技术人员对本发明的技术方案进行的简单修改或者等同替换,均不脱离本发明技术方案的实质和范围。
【主权项】
1.一种提取CAD图纸明细内容至Excel表格的方法,前提是CAD软件已安装VBA模块,其特征在于,该方法的具体步骤是: 1)在桌面新建Excel表格,在表格的第一行依次输入明细行各项对应的名称,将表格命名为“明细存放”; 2)打开CAD软件,在MicrosoftVisual Basic模式下插入过程及窗体,过程的功能是显示窗体,窗体为选择明细形式,保存并命名为acd.dvb文件,然后将其拷贝至CAD的安装目录下; 3)在CAD软件里新添命令按钮“提取明细”,并将该命令指向步骤2)中的插入过程; 4)提取明细:在CAD窗口点击“提取明细”,根据步骤2)中窗体提示进行选取,然后依次选取明细行所在区域的左下角点和右上角点,即实现明细行中的内容按照原始相对位置传递至“明细存放”表格中。2.根据权利要求1所述的提取CAD图纸明细内容至Excel表格的方法,其特征在于,若明细数据为本文格式,则其位置关系按如下公式计算:xlsheet.Cells ((loc (I) - pointl (I) + H * k) \ (H * k) + i, I) = ENT.TextString 其中H为行高,k为图纸比例,i为当前表格中的行数;k = (point2(0) - pointl (O))/ X,X为图纸比例1:1时明细行总长。
【专利摘要】本发明属AutoCAD二次开发领域,尤其涉及一种提取CAD图纸明细内容至Excel表格的方法。其技术方案是:新建Excel模板文件,打开目标图纸,点击“工具”菜单下的“提取明细”按钮,窗体显示选择明细表的具体形式,然后依次选择明细行所在区域的左下角点和右上角点,明细行内容按照原有相对位置传递至Excel表格并给出提取成功的提示。本发明具有操作简单,准确性和效率高的特点,适用于多种形式明细表内容的提取。
【IPC分类】G06F9/44
【公开号】CN105159685
【申请号】CN201510623382
【发明人】刘建洋, 张磊, 贺映才
【申请人】武汉中冶易新科技有限公司
【公开日】2015年12月16日
【申请日】2015年9月28日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1