明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2041|回复: 16

[提问] 块属性导出导入excel

[复制链接]
发表于 2020-9-11 22:56 | 显示全部楼层 |阅读模式
20明经币
忘记在哪里下载的了,应该是有人整合的Lee Mac的作品,不过第一步导出到csv就出错,显示“参数类型错误: lselsetp nil”,麻烦各位有空的话帮忙看看
附件: 您需要 登录 才可以下载或查看,没有账号?注册

最佳答案

查看完整内容

显示“参数类型错误: lselsetp nil”的原因是图纸范围内没有选择到text文本。 (setq ss (ssget "_X" (list (cons 0 "TEXT")))) “ssget”已经限定了只选择"TEXT",你看下跟你的需求是否相符。
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2020-9-11 22:56 | 显示全部楼层
显示“参数类型错误: lselsetp nil”的原因是图纸范围内没有选择到text文本。
(setq ss (ssget "_X" (list (cons 0 "TEXT"))))
“ssget”已经限定了只选择"TEXT",你看下跟你的需求是否相符。
回复

使用道具 举报

发表于 2020-9-12 09:02 | 显示全部楼层
本帖最后由 gaics 于 2020-9-12 09:15 编辑

没发现错误,也没输出什么具体内容,只有Layout,Layer,X,Y,Tekst,Entity,Rotation,Height
--------------------------------------------------------------------------------------------------------------
布局里才有效?提取的都是text,跟块属性有什么关系?
回复

使用道具 举报

 楼主| 发表于 2020-9-12 09:17 | 显示全部楼层
插件中的功能没实现,按照介绍是ETC导出块属性到csv,但是没有成功,IFC是import from csv,从csv文件导入块属性,UFC是update from csv,从csv更新块属性
回复

使用道具 举报

发表于 2020-9-12 09:28 | 显示全部楼层
本帖最后由 gaics 于 2020-9-12 09:33 编辑
kyky1002 发表于 2020-9-12 09:17
插件中的功能没实现,按照介绍是ETC导出块属性到csv,但是没有成功,IFC是import from csv,从csv文件导入 ...

在布局内成功了,选中的都是text文本
ifc、ufc都正常运行。
回复

使用道具 举报

发表于 2020-9-12 10:18 | 显示全部楼层
本帖最后由 wzg356 于 2020-9-12 10:21 编辑

函数:VxGetAtts
功能:获取块中所有属性
函数代码:
(defun VxGetAtts (Obj)
  (mapcar
    '(lambda (Att)
       ;(cons
            (list
               (vla-get-TagString Att)
               (vla-get-TextString Att)
       )
     )
    (vlax-invoke Obj "GetAttributes")
  )
)
语法:(VxGetAtts Obj)
参数:Obj = Object [VLA-OBJECT]
返回值:表

示例:(VxGetAtts(vlax-ename->vla-object (car (entsel))))

本帖子中包含更多资源

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

x

评分

参与人数 1明经币 +1 金钱 +5 收起 理由
kyky1002 + 1 + 5 很给力!

查看全部评分

回复

使用道具 举报

发表于 2020-9-12 10:22 | 显示全部楼层
接6楼
(ls2xls (VxGetAtts(vlax-ename->vla-object (car (entsel)))))
回复

使用道具 举报

 楼主| 发表于 2020-9-12 11:08 | 显示全部楼层
感谢大家,原来是我理解错了,还以为是块属性导出导入
回复

使用道具 举报

 楼主| 发表于 2020-9-12 11:30 | 显示全部楼层
gaics 发表于 2020-9-12 09:28
在布局内成功了,选中的都是text文本
ifc、ufc都正常运行。

请问有办法改成模型里也能用么
回复

使用道具 举报

发表于 2020-9-12 12:13 | 显示全部楼层
kyky1002 发表于 2020-9-12 11:30
请问有办法改成模型里也能用么

(if (and (point_between_window pt bl tr) (/= layout "Model"))
改为(if (point_between_window pt bl tr)

评分

参与人数 1明经币 +1 金钱 +5 收起 理由
kyky1002 + 1 + 5 很给力!

查看全部评分

回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-29 02:27 , Processed in 4.438400 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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