AutoCAD LT - Simple Title Block Attribute Update that updates all other Title Blocks

AutoCAD LT - Simple Title Block Attribute Update that updates all other Title Blocks

MatthewSJX8RB
Explorer Explorer
2,234 Views
22 Replies
Message 1 of 23

AutoCAD LT - Simple Title Block Attribute Update that updates all other Title Blocks

MatthewSJX8RB
Explorer
Explorer

I've got a Block that is my Title Block on each sheet. I simply want to change attribute text in one Title Block and have it update all of the other Title Blocks. 

 

I thought ATTSYNC would do it, I've used REGENALL, I've look into Xrefs..... Fields?

 

Seems like a really simple and common requirement. 

 

[ The subject line of this post has been edited to include the product name by @handjonathan ]

0 Likes
2,235 Views
22 Replies
Replies (22)
Message 2 of 23

TerryDotson
Mentor
Mentor

I've got a Block that is my Title Block on each sheet. I simply want to change attribute text in one Title Block and have it update all of the other Title Blocks. 

Use the CUSTOM section of the DWGPROPS dialog to set up named variables which you then reference with a field in as many blocks as desired.  Then you make a change in one place (the DWGPROPS dialog) and a simple REGEN updates the entire drawing.

Message 3 of 23

JBerns
Advisor
Advisor

@MatthewSJX8RB,

 

I think you want to try the GATTE command, which is the Global ATTribute Editor.

 

Specify the block name to edit.

Specify the attribute name to change.

Specify the new text.

 

Let us know if this helpful.

 

 

Regards,

Jerry 

-----------------------------------------------------------------------------------------
CAD Administrator
Using AutoCAD & Inventor 2025
Autodesk Certified Instructor
Autodesk Inventor 2020 Certified Professional
Autodesk AutoCAD 2017 Certified Professional
0 Likes
Message 4 of 23

paullimapa
Mentor
Mentor

questions:

1. what's name of block

2. what's the attribute tag you want to change the value

3. what's the new value

perhaps post block with attribute?


Paul Li
IT Specialist
@The Office
Apps & Publications | Video Demos
0 Likes
Message 5 of 23

MatthewSJX8RB
Explorer
Explorer

I used GATTE and it is cumbersome as it gets. I've got to know the block name and attribute tag and type it in? There are like 50 attributes on a titleblock! AUTOCAD has a knack to makes simple things very difficult. 

All I need is a radio button on a typical Attribute Editor Dialogue Box that I can click to change all instances of the block.  

0 Likes
Message 6 of 23

cadffm
Consultant
Consultant

>> I've got to know the block name"

No

 

>>"and attribute tag"

No (not if there is already a attribut value visible)

 

Start GATTE, click on the attribut you want to edit.. and enter your new attributvalue.

 

 
 

 

 

Sebastian

0 Likes
Message 7 of 23

Kent1Cooper
Consultant
Consultant

If you want the same one updated to the same value throughout, maybe it shouldn't be an Attribute, but just Text.  Then you can edit the Block definition and all references to it will be changed in the same way.

Kent Cooper, AIA
Message 8 of 23

TheCADnoob
Mentor
Mentor

this isn't exactly what you asked for, but have you looked into sheet set manager? It helps keeping tracking an updating drawings title blocks etc.

 

https://www.autodesk.com/autodesk-university/class/Complete-Guide-Sheet-Set-Manager-2020

CADnoob

EESignature

0 Likes
Message 9 of 23

RSomppi
Mentor
Mentor

See message #7.

0 Likes
Message 10 of 23

MatthewSJX8RB
Explorer
Explorer

I've basically done this with a "Mother" TBlock in Model Space and multiple "Sibling" Tblocks in paper space with Fields and it works. The problem then arises when I open a separate file and attempt to reference "Mother." Even if I copy "Mother" to the Model Space of the second file, the "Sibling" TBlocks show ####.  

 

 

0 Likes
Message 11 of 23

MatthewSJX8RB
Explorer
Explorer

Welp, I type GATTE and GATTE (-ATTEDIT) comes up. It doesn't allow me to choose a block, even if I've chosen the block before the command

0 Likes
Message 12 of 23

cadffm
Consultant
Consultant

"the "Sibling" TBlocks show ####.  "

Because you didn't copy mother and sibling objects in one and the same step.

 

and for this structure it was not possible to do this in one step.

 

But note: Terrys way is totally different to your tey to use a "mother object" !

 

Try the way of dwgprops and fields, if you need one information in all layouts.

Sebastian

0 Likes
Message 13 of 23

cadffm
Consultant
Consultant

Gatte is Gatte and not -Attedit..

Sounds you never tested Gatte.

 

Type in Gatte<enter> and hit ESC

See in Textscreen [F2] what the last command was..

Or hit Enter to see what command started at last.

 

Gatte is part of ExpressTools, sure that you installed Expresstools?

Sebastian

0 Likes
Message 14 of 23

MatthewSJX8RB
Explorer
Explorer
I've got to install express
0 Likes
Message 15 of 23

paullimapa
Mentor
Mentor

Try this but not tested since I don't have your title block

 

; chatvg function globally changes selected block attribute value to a new value
(defun c:chatvg (/ aec_chkblknam blknam count ed en len nen ned ss tag)
  (vl-load-com)
; aec_chkblknam function chks for dynamic block before returns block name
; Argument:
; ent-arg = entity object
; Returns:
; block name
(defun aec_chkblknam (ent-arg / objv)
 (setq objv (VLAX-ENAME->VLA-OBJECT ent-arg)) ; convert entity to obj
 (if (= (VLAX-GET-PROPERTY objv 'IsDynamicBlock) :VLAX-TRUE) ; chk if dynamic block 
  (vlax-get-property objv 'EffectiveName) 
  (cdr (assoc 2 (entget ent-arg)))
 )
) ; defun
  (setq en(entsel"\nSelect Block Attribute Value to Globally Change:"))
  (if en
    (progn
     (setq ed(entget (car en))) 
     (if (and (assoc 66 ed) (equal "INSERT" (cdr(assoc 0 ed)))) 
       (progn
        (setq blknam (aec_chkblknam (car en)))
        (setq ned(entget(setq nen(car(nentselp(cadr en))))))
        (if(eq "ATTRIB" (cdr(assoc 0 ned)))
         (progn
          (setq tag (cdr(assoc 2 ned))) 
          (setq oval (cdr(assoc 1 ned)))
          (setq nval (getstring T (strcat"\nEnter New Attribute Value <" oval ">: ")))
          (if nval
           (progn
            (if (setq ss(ssget "X" (list '(0 . "INSERT") (cons 2 blknam) '(66 . 1))))
             (progn
              (setq count 0 len (sslength ss))
              (while (< count len)
               (setq en (ssname ss count))
               (setq sen (entnext en)) 
               (while sen
                (setq sed (entget sen))          
                (if (/= (cdr(assoc 0 sed)) "SEQEND") 
                 (progn
                  (if(equal tag (cdr(assoc 2 sed)))
                   (progn
                    (setq sed (subst (cons 1 nval) (assoc 1 sed) sed)) ; substitute new value
                    (entmod sed)                                 ; modify its' data
                    (entupd sen)
                    (setq sen nil)
                   )
                   (setq sen (entnext sen)) 
                  ) ; if tag match
                 ) ; progn
                 (setq sen nil)             
                ) ; if more attributes
               ) ; while attributes       
               (setq count (1+ count)) ; next block 
              ) ; while blocks
             ) ; progn
            ) ; if    
            (princ(strcat"\nAll Blocks Named: [" blknam "] with Attribute Tag: [" tag "]\n\tGlobally Changed to New Value: [" nval "]."))(princ)
           ) ; progn
           (progn
             (princ"\nNo New Attribute String Value Entered.")(princ)
           )
          ) ; if new value entered
         ) ; progn
         (progn
          (princ"\nObject Selected is NOT an Attribute.")(princ)
         )
        ) ; if
       ) ; progn
       (progn
        (princ"\nObject Selected is NOT a Block with Attributes.")(princ)
       )
     ) ; if
    ) ; progn
    (progn
      (princ"\nNothing Selected.")(princ)
    )
  ) ; if
) ; defun

 


Paul Li
IT Specialist
@The Office
Apps & Publications | Video Demos
0 Likes
Message 16 of 23

MatthewSJX8RB
Explorer
Explorer

the attached shows that I've installed express tools, but for some reason the icons didn't load and the commands don't work. I'm also demonstrating my option only option when typing in GATTE

 

C:\Users\Matthew Smith\AppData\Local\Temp\{73A78CE1-E03A-3415-826E-91A699E39B17}\x64\en-US\acadps\PF\Root\UserDataCache\Support\acetmain.cuix is the file I used and 

 

https://www.youtube.com/watch?v=Pg7QRF2rjdM

 

is the video I followed. I've got 2023 AutoCAD LT and this video is two years old. 

 

0 Likes
Message 17 of 23

paullimapa
Mentor
Mentor

AutoCAD LT won't run any lisp functions...you'll need the full AutoCAD 2023 version.


Paul Li
IT Specialist
@The Office
Apps & Publications | Video Demos
0 Likes
Message 18 of 23

cadffm
Consultant
Consultant

I don't know why you have this path (and files) there,

but it isn't part of the normal AutoCAD LT installation

and in addition to paulli: Expresstools are program extensions (Lisp and other programming languages)

anf in LT you can not use them.

 

Only one detail I can not explain, why the hack it is knwoing and displaying that "GATTE (-ATTEDIT)"

on your LT

CADffm_0-1666816976619.png

 

I am really interested in that, because just loading a (for usual useless) acetmain.cuix in LT

can not do that.

 

hmm

Sebastian

0 Likes
Message 19 of 23

john_carrierBLK54
Observer
Observer

Without the Express Tools, but the use of lisp in AutoCAD LT 2024, I came up with my own crude version of GATTE to edit the attribute value of a block in all layouts.

0 Likes
Message 20 of 23

cadffm
Consultant
Consultant

 


@john_carrierBLK54 wrote:

Without the Express Tools, but the use of lisp in AutoCAD LT 2024, I came up with my own crude version of GATTE to edit the attribute value of a block in all layouts.


But just the last blockreference of each layout!

 

 

This version will change the attribut value of all blockreferences of this block&attribut in all layouts

GATTELT (based on the simple code above, so you have to unlock your layers manually)

Sebastian

0 Likes