CADXChange

指南/图纸标准

ATTSYNC 之后属性值被清空了 — 怎样安全地更新多张图里的块

更新于 November 5, 2026

使用 BlockCopy 制作
BlockCopy 更新属性标记已改名的图框之后的结果,六张图纸里新旧标记已对应

你改了图框(加一行、整理布局、把 SHEET_NO 改名为 DWG_NO),重定义了块,运行 ATTSYNC,结果每张图的图号都回到了默认值。要么值还在,但是有人手工挪开过的属性又全部弹回了原位。

这是 ATTSYNC 的正常行为。它按标记匹配属性,所以标记改过名的属性,值无处可去,新标记从默认值开始;它还会把每个属性的位置和格式重置成定义里的样子。Autodesk 自己的建议是:块插入之后,不要再改标记。而且它只在当前打开的图里有效,前提是新的定义已经被带进了那张图。

这篇用 CADXChange Toolkit 里 BlockCopy 的 Sync Update 页,一次运行把修改后的块定义推送到整套图纸。值按标记转移,改过名的标记,它的值会映射到新标记而不是丢掉,写入后每个值都会读回核对。示例把改过的 TITLEBLOCK(SHEET_NO 改名为 DWG_NO)推送到六张图里。

1. 把修改后的块放进一张源图

在任意一张图里用 BEDIT 或 BLOCK 改一次,并保存。这张图就是源图。块名保持不变:Sync Update 是用同一个块的新版本替换旧定义。如果要让图纸改用另一个名字的块,是另一件事,文末会讲。

属性改名、新增、删除都可以,后面的步骤会处理它们。

2. 选源块和目标图纸

打开 BlockCopy,切到 Sync Update。浏览到源图:它的块会列出引用数量和是否带属性,View 能看到块的属性列表。勾选要推送的块。

点 Add files,选出用到这个块的图纸。它们只要有旧版本就行,新版本来自源图。保持勾选 Automatic backup:每张图改动前会先复制到备份文件夹。

Keep attribute positions 默认是勾选的,所以有人手工挪过的属性会待在原处。如果这次修改本来就是要挪动属性(比如图框改了版式),就取消勾选。

3. 映射改过名的标记

点 Sync Now。BlockCopy 会先读取每张目标图,把它的属性和新定义对比。如果某个还保存着值的标记在新定义里不存在,这里是 SHEET_NO,写入之前会弹出一个对话框列出它。

选择应该接收它的值的新标记(DWG_NO),或者,如果这些信息确实不要了,就选 Discard values,然后点 Apply and sync。点 Cancel 则所有图纸都保持原样。

4. 检查结果

BlockCopy 在每张图里替换定义,并用它重建每个引用,每个值按标记带过去,映射过的标记的值带到新标记上。列表里按图显示结果,这里六张图都是 TITLEBLOCK: synced 1 reference(s),状态 Success。

每张图保存之后,BlockCopy 会把它读回来,拿属性值和之前的做比对。哪张图有不一致,就标为 Failed 并给出详情,其余图纸继续处理。我们故意把 SHEET_NO 映射到错误的标记(CLIENT)试过,结果每张图都被标为 Failed,提示有 1 个属性没有按预期在同步中保留下来,而不是悄悄通过。

在某张图的详情里点 Rollback,或者用 Restore Backup,都能让图纸原样恢复,BlockCopy 关闭之后也可以。

5. 自己看一眼值

最快的独立检查是把图纸读回来。把它们加到 BlockSync 的 Blocks → Excel 页,导出 TITLEBLOCK:表里多了一列 DWG_NO,里面是 A-101 到 A-202,这些原来在 SHEET_NO 里;版次、图名、业主和地址都和以前一样。

这个示例里块的句柄也没有变,所以同步之前导出的 Excel 仍然可以写回。

同步之后 BlockSync 导出的 Excel 表:DWG_NO 列里是 A-101 到 A-202,旁边是每张图未变的版次和图名

如果图纸要改用另一个名字的块,比如把旧 Logo 或旧符号换成新的,请用 BlockCopy 的 Upgrade Version 页,而不是 Sync Update。它会替换引用,并把属性值带到新块上。

CADXChange Toolkit 有 30 天完整试用,可以先拿一套真实图纸的副本跑一遍。同步之前,先在 AutoCAD 里关闭这些图纸,因为在别处打开的文件可能被锁定。

用你自己的图纸试一试

CADXChange Toolkit 可以对整个文件夹的图纸做这件事,先预览、先备份。30 天试用包含全部功能。

开始免费试用 →

开始之前 — 常见问题

为什么 ATTSYNC 把我的属性值重置了?
ATTSYNC 会用新的块定义重建每个引用,并按标记匹配属性。标记改过名的属性,找不到旧值的来源,只能回到默认值;属性位置也会被重置成定义里的样子。而且它只对当前打开的图有效。
更新很多张图里的块,一定要用 LISP 吗?
不用。BlockCopy 的 Sync Update 会替换每张目标图里的块定义,并替你重新同步每个引用,不需要写或维护任何脚本。
属性标记改过名,它的值会怎么样?
写入之前,BlockCopy 会列出每个仍然保存着值、但新定义里没有的标记。由你选择哪个新标记接收这些值,或者放弃它们,然后才会写入。值是按标记名匹配的,不是按位置。
怎么知道没有丢值?
每张图保存之后,BlockCopy 会把它读回来,拿每个属性值和之前的比对。哪张图有不一致,就标为 Failed 并给出详情,Rollback 或 Restore Backup 可以让它原样恢复。
同步之后怎么撤销?
勾选 Automatic backup 后,每张图都会先复制到备份文件夹。在某张图的详情里点 Rollback 能恢复这一张,Restore Backup 能恢复以前任何一次运行的图纸,程序关闭后也可以。
运行需要什么条件?
一台 Windows 10 或 11 电脑,加上这些图纸。不需要开着 AutoCAD。CADXChange Toolkit 含 30 天完整试用;试用之后,读取、扫描和预览仍可使用,写入图纸需要许可。

相关指南