乐筑天下

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

[求助]新手求助,关于CAD Blockreference的问题 ,望各位大大不吝赐教!

[复制链接]

1

主题

4

帖子

1

银币

初来乍到

Rank: 1

铜币
8
发表于 2009-3-16 11:32:00 | 显示全部楼层 |阅读模式
我在做一个把EXCEL中的数据读取到CAD中并用这些数据来生成一些图纸的事情,碰到如下这个问题困扰很久一直没有解决:
作为模板的CAD图纸里已经有了一个块:acbldefl ,这个块包含了一些内容 比如叫 ID1 ID2 ID3 ,分别表示电缆的大小,类型和数量,我的目的是想让EXCEL中存着的50台电机的电缆数据读到CAD中然后分别写入ID1 ID2 ID3并另存为,现在的问题是,我怎么能直接修改block : acbldefl里的 tag: ID1 ID2 ID3?
我看到的例子都是类似    如下语句,都是插入块
Dim blockRefObj As AcadBlockReference
    insertionPnt(0) = 2
    insertionPnt(1) = 2
    insertionPnt(2) = 0
    Set blockRefObj = ThisDrawing.ModelSpace.InsertBlock _
                     (insertionPnt, "TESTBLOCK", 1, 1, 1, 0)
可我不知道当这个块存在的时候我怎么去调用?
我想照着例子来
Set TestBlkRef = ThisDrawing.ModelSpace.Item("acbldefl")
可是报错说无效的过程调用或参数...
卡在这个问题上了,希望大大们指点一下,不胜感激!
回复

使用道具 举报

1

主题

4

帖子

1

银币

初来乍到

Rank: 1

铜币
8
发表于 2009-3-16 22:47:00 | 显示全部楼层
深夜来顶,期待回复
回复

使用道具 举报

11

主题

326

帖子

9

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
370
发表于 2009-3-17 11:18:00 | 显示全部楼层
Set TestBlkRef = ThisDrawing.ModelSpace.Item("acbldefl") 改成
Set TestBlkRef = ThisDrawing.blocks("acbldefl") 试试
回复

使用道具 举报

1

主题

4

帖子

1

银币

初来乍到

Rank: 1

铜币
8
发表于 2009-3-17 12:32:00 | 显示全部楼层
谢楼上回复,我忘记说了
TestBlkRef 类型是 AcadBlockReference,按您那样改完会报类型不匹配...
Sub AJJJ()
Dim Test As Variant
Dim TestBlk As AcadBlock
Dim TestBlkRef As AcadBlockReference
Dim varAttributes As Variant
Dim i As Integer
'Set TestBlkRef = ThisDrawing.ModelSpace.Item("acbldefl")
Set TestBlkRef = ThisDrawing.Blocks("acbldefl")
varAttributes = TestBlkRef.GetAttributes
If varAttributes(i).TagString = "1" Or True Then
   varAttributes(1).TextString = "aaaaabbbbbbbbbbbbb"
   
    varAttributes(2).TextString = "3"
    varAttributes(3).TextString = "4"
End If
End Sub
干脆全贴出来
回复

使用道具 举报

11

主题

326

帖子

9

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
370
发表于 2009-3-17 15:33:00 | 显示全部楼层
blockreference在一张图中有很多个,对于有Attribute的blockreference,每个Attribute可能不一样的,这样的话,你可能要建立一个选择集,选择所有块名为“acbldefl”blockreference,并对每个blockreference进行Attribute的操作。
回复

使用道具 举报

1

主题

4

帖子

1

银币

初来乍到

Rank: 1

铜币
8
发表于 2009-3-18 08:49:00 | 显示全部楼层
谢谢楼上!
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-2 13:13 , Processed in 0.847491 second(s), 64 queries .

© 2020-2025 乐筑天下

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