乐筑天下

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

[编程交流] 外部参照重新关联问题(

[复制链接]

16

主题

43

帖子

33

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
85
发表于 2022-7-6 11:26:02 | 显示全部楼层 |阅读模式
(我正在使用AutoCAD 2000/2002)
 
你好
我有一个问题,我希望得到帮助。我不知道这是否可以做到,所以我不能为董事会提供任何带问题的开始代码。
 
让我先解释一下我想要实现的目标。
我有成千上万的画需要重新命名。这本身就是一种痛苦,但我会努力克服它。然而,在完成这项任务的过程中,出现了另一个问题。以前附着到主图形的外部参照现在将不会加载,因为它们也已重命名。如果你看我附上的JPG你会看到我指的是什么。
 
所以……。第一个问题是:
是否可以编写VBA宏来更新文件夹结构中每个主图形的外部参照?(打开每个主图形,并用新的外部参照名称替换初始外部参照名称)
 
第二个问题是:
如果可以做到这一点,请有人提供尽可能多的信息/代码来完成这项任务吗?
 
因为我参与编程的时间是如此的零散和有限,我的VBA编程知识有点狭窄,所以我通常需要被引导。
 
我将尽可能地感谢你的帮助。
 
非常感谢。
迈克
122608tk2z3p63f9za4a32.jpg
回复

使用道具 举报

0

主题

132

帖子

198

银币

限制会员

铜币
-21
发表于 2022-7-6 11:45:25 | 显示全部楼层
一个不错的免费重命名程序。。。
http://rename.lupasfreeware.org
 
可以做到的是,基本上删除旧的外部参照,然后“重新插入”新的外部参照。我们做了一些类似的事情。
回复

使用道具 举报

2

主题

66

帖子

85

银币

初来乍到

Rank: 1

铜币
4
发表于 2022-7-6 11:51:19 | 显示全部楼层
不确定,但2002年有参考经理吗??
 
启动所有程序Autodesk Autocad 2002 Reference Manager
回复

使用道具 举报

16

主题

43

帖子

33

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
85
发表于 2022-7-6 12:07:43 | 显示全部楼层
谢谢borgunit。我可能可以使用该程序来帮助我加快重命名过程。那可以节省我很多时间。
 
smorales02-我没有看到这样的动物,但谢谢你。
回复

使用道具 举报

0

主题

132

帖子

198

银币

限制会员

铜币
-21
发表于 2022-7-6 12:18:24 | 显示全部楼层
这是一首歌。。。
 
  1. Private Function GetXrefPath() As String
  2. '------------------------------------------------------------------------------
  3. '
  4. 'Returns:   XREF drawing path i.e. "SomeDrawing.dwg"
  5. 'Caveats:   Assuming no nested xrefs and only one per drawing
  6. '------------------------------------------------------------------------------
  7. Dim acXref As AcadExternalReference
  8. Dim acSS As AcadSelectionSet
  9. Dim acBlks As AcadBlocks
  10. Dim acBlk As AcadBlock
  11. Dim acEnt As AcadEntity
  12. Dim sPath As String
  13. Dim sEntType As String
  14. '''''''''''''''''''''''''''''''''''''''
  15. On Error GoTo ErrHandler
  16. sEntType = "INSERT"
  17. Set acSS = GetEntitySS(sEntType)
  18. Set acBlks = ThisDrawing.Blocks
  19. For Each acEnt In acSS
  20.    Set acBlk = acBlks(acEnt.Name)
  21.    If acBlk.IsXRef Then
  22.        Set acXref = acEnt
  23.        sPath = acXref.Path
  24.        Exit For
  25.    End If
  26. Next acEnt
  27. GetXrefPath = sPath
  28. ExitHere:
  29.    Exit Function
  30. ErrHandler:
  31.    Debug.Print Err.Number, Err.description, "Function 'GetXrefPath' Failed"
  32. End Function
回复

使用道具 举报

0

主题

1

帖子

1

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-6 12:27:45 | 显示全部楼层
 
 
这就是我需要的!!
 
只有一个问题,你能给我你在这里使用的“GetEntitySS”函数吗?
 
谢谢!
卢卡·卡波费里
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-6 02:28 , Processed in 0.596649 second(s), 67 queries .

© 2020-2025 乐筑天下

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