乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
楼主: edgar_hj1

[编程交流] dwg到xls例程?

[复制链接]

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 10:48:09 | 显示全部楼层
 
我还认为您的问题涉及ACAD_表实体,如果它只是行和文本的集合,那么问题的难度会有所增加。。。
回复

使用道具 举报

1

主题

1069

帖子

1050

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
69
发表于 2022-7-6 10:54:03 | 显示全部楼层
从我的代码库中试试这个
[code];;导入没有复杂标题行的普通表;;;;放入新创建的Excel文件;;;;作者:Fatty T.O.H.(c)2007*版权所有;;;;2008年8月20日编辑;;编辑于2010年8月26日(vl load com)(defun rem dups(mylist/newlst);;删除重复项;;由hutch发布(foreach item mylist(and(null(member item newlst))(setq newlst(cons item newlst)))newlst)(defun get contents(/data en i ip output p1 p2 rowlist ss tmp txt ylist)(setq data nil);仅调试(alert“Select table by window selection\n\t Without title”)(setq p1(getpoint“\n指定第一个角点:>>”)p2(getcorner p1“\n指定相反的角点:>>”)(setq ss(ssget“W”(list(car p1)(cadr p1))(list(car p2)(cadr p2))(list(cons 0“TEXT”))i-1)(repeat(sslength ss)(setq en(ssname ss(setq i(1+i)))ip(cdr(assoc 10(entget en)))txt(cdr(assoc 1(entget en)))tmp(cons txt ip)数据(cons tmp data))(setq ylist(mapcar’caddr data)ylist(rem dups ylist)ylist(vl sort ylist(function)(lambda b)(>a b)))(repeat(length ylist)(setq rowlist(vl remove if not)(function(lambda(x)(equal(caddr x)(car ylist)0.1)))数据)行列表(vl sort rowlist(function(function)(lambda(a b)(<(cadr a)(cadr b)))(setq输出(append output(list rowlist)))(setq ylist(cdr ylist)))(setq输出(mapcar(函数(λ(x)(mapcar’car x)))输出))(反向(rem dups输出));**主要部分***;;(defun C:ETT(/adoc aexc awb axss cll colm csht rowdata excel\u list nwb osm rang row sht)(vl load com)(setq excel\u list(get contents))(setq fname(getstring T“\n输入不带XLS扩展名的excel文件名:”)(setq aexc(vlax get or create object“excel.Application”)awb(vlax get property aexc“Workbooks”)nwb(vlax invoke method awb“Add”)sht(vlax get property nwb“Sheets”)csht(vlax get property sht“Item”1)cll(vlax get property csht“Cells”)(vlax put property csht“Name”Table)(vla put visible aexc:vlax false)(setq n 1num(length(car excel\u list))(repeat num(setq row 1 colm n)(setq rowdata(mapcar'car excel\u list))(repeat(length rowdata)(vlax put propertycll“Item”)rowcolm(vl princ to string(car rowdata))(setq row(1+row))(setq rowdata(cdr rowdata))(setq excel\u列表(mapcar的cdr excel\u列表))(setq row(1+row)n(1+n))(setq rang(vlax get property csht“UsedRange”);;左水平对齐(缩进):(vlax put属性范围“Horizontalalignment”(vlax make variant-4131 3));;垂直对齐中心:(vlax put属性范围“垂直对齐”(vlax make variant-4108 3));;设置文本格式:(vlax put property rang“NumberFormat”(vlax make variant“@);
回复

使用道具 举报

11

主题

46

帖子

35

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
55
发表于 2022-7-6 10:56:28 | 显示全部楼层
海,我已经尝试了这个lisp与这个附加的图纸。。。但一些错误正在到来。。你能看到吗????我正在使用cad 2007版本。。。这是用于将Dwg表格导出为Excel格式????
 
 
此处*未找到Excel应用程序*;错误:没有函数定义:
XLP-GET-RANGE此错误即将出现。。。。请你澄清一下。。。。。。
 
 
提前感谢。。。
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-6 10:57:57 | 显示全部楼层
在代码的标题中提到导入到新创建的Excel电子表格中。这是否意味着电子表格必须以某种形式存在,即使它是空的?
回复

使用道具 举报

11

主题

46

帖子

35

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
55
发表于 2022-7-6 11:02:19 | 显示全部楼层
Hai hw使用此lisp??????这是从excel导入的????请澄清如何使用此lisp。。。输入和输出是什么。。。。。
 
 
回复

使用道具 举报

11

主题

46

帖子

35

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
55
发表于 2022-7-6 11:06:09 | 显示全部楼层
您能给出表格从excels导入到dwg的代码吗?或者-----表格从cad导出到excel。。因为我们使用表格了解细节。。。。。你能帮助我吗。。。。。。我正在使用cad 2007。。。。。。。我期待Lisp程序。。。。
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-6 11:07:02 | 显示全部楼层
我看到你正在使用Mech 2007。我刚刚用plain vanilla 2007做了一个测试,在AutoCAD中使用table命令创建了一个表,由5列14行组成。我填充了每个列标题,并在每个单元格中输入整数。我使用TABLEEXPORT命令以逗号分隔(CSV)文件格式导出数据。我双击了。我创建了一个CSV文件,打开了Microsoft Excel(2003),表格有我的主标题(标题)、五列以及我在每个单元格中放置的所有值。因此,正如您看到的那样,如果您的图形中有一个真正的AutoCAD表格,则可以导出数据并在Excel中轻松使用。这一切都是在不使用任何lisp代码的情况下完成的。
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-6 11:10:13 | 显示全部楼层
关于lisp例程,你一直在问,这是张贴在这里的。
 
复制内容并粘贴到记事本中。txt文件,并称之为导出表。lsp。
 
在具有类似表格的对象(直线和文字)的AutoCAD图形中,键入APPLOAD并按Enter键。
 
当“加载/卸载应用程序”窗口出现时,查找并加载前面提到的lisp文件。
 
AutoCAD将告诉您它已成功加载。关闭窗口。
 
在命令行中键入字母ETT。注:这些字母出现在代码中。你怎么会想念他们?
 
按照屏幕上的提示选择对象(使用窗口)和命名新的Excel电子表格文件(名称中不要使用XLS文件类型)。
 
将创建XLS文件,AutoCAD将告诉您在哪里可以找到该文件。转到该文件夹,用Excel打开该文件。你的数据应该在那里。
 
我使用Auto2010和MS Office 2003对此进行了测试。它也应该在AutoCAD 2007中工作。
回复

使用道具 举报

11

主题

46

帖子

35

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
55
发表于 2022-7-6 11:15:37 | 显示全部楼层
一个命令来了..>选择tableby window selection Without Title。。那么在这里我如何选择xls??????
回复

使用道具 举报

11

主题

46

帖子

35

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
55
发表于 2022-7-6 11:18:58 | 显示全部楼层
 
亲爱的评论。。。。我明白你在说什么。。。。。。其实这也很好。。还有一件事,我们想让这张桌子充满吸引力。。。。像顶部标题列文字是一些什么高度与一个colur。。。而表格剩余文字颜色不同,字体大小不同。。。。根据这个需要,我想先把桌子炸开。。假设我被分解了,表格意味着我无法导出到excel格式。。。。。。那么我可以在cad中创建表格吗。。。。。字体大小和颜色不同。。所以只有我被问到这个Lisp程序。。。。用于导出到excel。。。。。或者我们也可以从excel导入。。所以我期待你给我的任何一个。。你能澄清一下吗??????????
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-6 21:05 , Processed in 0.972988 second(s), 70 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表