I received a question about how to replace one block with another block. Replacing blocks is useful for 3 reasons:
- To create multiple versions of a drawing, each with a different block. For example, you could try out a floor plan with different desks.
- When your company replaces one part with another part
- If your drawing is very complex, to reduce regeneration time, by replacing a complex block with a simpler one. Of course, before plotting, you would reverse the replacement.
There are two methods to replace one block with another.
Use Express Tools BLOCKREPLACE
This Express Tool lets you replace one block with another globally in a drawing. Follow these steps:
- Make sure that the new block you want to insert is defined in the drawing. (If necessary, insert it to check.)
- Choose Express> Blocks> Replace Block with Another Block or enter blockreplace on the command line.
- In the BLOCKREPLACE dialog box, choose the block that you want to replace from the list of blocks in the drawing.
- Click OK.
- Still in the dialog box, choose the block that you want to use to replace the original block.
-
- Click OK.
- At the Purge unreferenced items when finished? <Y>: prompt, enter y or n.
- You see a message, n blocks replaced. Results may not be apparent until next regen. If necessary, do a regen. (In my test, I didn’t need to regenerate the drawing to see the new block.)
Tips from our reader : If the BLOCKREPLACE command changes the scale of the block after replacement, find your block in the drop-down list and uncheck the box next to Annotative.
## Dynamic block is another great productivity tip to master. It creates rules and restrictions that control the appearance and behavior of a block when it is inserted into a drawing. Sign up below to get your Free tutorial on creating a complete dynamic block, including a drawing to practice on. You’ll make a movable chair, resizable desk, and more.
Use the -INSERT command
This older method allows you to replace a block in your drawing with a file. If necessary, first use the WBLOCK command to export the new block to a file. Follow these steps:
- Type -insert on the command line.
- At the Enter block name or [?] <square plate>: prompt, enter blockname=filename, where blockname is the name of the block in your drawing and filename is the name of the file containing the block you want to use. If the file is not in the support file search path, type the entire path. (You don’t need to add .dwg.) Press Enter. For example:
square plate=c:\drawings\plate
- At the Block “square plate” already exists. Redefine it? [Yes/No] <N>: prompt, enter y and press Enter. You see the message: Block “square plate” redefined (with your block name inserted).
- At the Specify insertion point or [Basepoint/Scale/X/Y/Z/Rotate]: prompt, press Esc to not insert a copy of the new file; all you want to do is redefine the old block.
Here, I replaced the square plate block with the plate block, which was in plate.dwg.
Before the replacement:
After the replacement:
Do you want more productivity tips to help you Draw and Edit faster and easier? Check out “Top Productivity Tips Every AutoCAD User Should Know”
- Combine or subtract 2D shapes to create custom shapes - February 17, 2022
- Working with linetype scales - January 18, 2022
- Rename named objects–blocks, dimension styles, layers, and more - December 21, 2021
Thank you.
The Express-tool doesn’t work anymore with dynamic blocks!
Karel
How can I paste a circle shape to outside of my cylinder in atocad? I want my circle lay on the cylinder and not just standing on front of it?
Thank you Sir,
This is very helpful.
best answer
thank you much
The express tool scales my blocks >:( Is there a way to get it to not scale them?
Melody, sounds like your block is Annotative. You need to start the Block command, find your block in the drop-down list and uncheck the box next to Annotative.
Is it possible to change one dynamic block with another dynamic block?
When I use this tool my blocks replaced always get scaled much larger than original. Any ideas why?
Hello Ellen,
How are you doing? Can you replace individual blocks with one another? not globaly…
Thank You
Allen it is possible to change one block you can use lisp for it.
Or if the block comes from a blockdirectiory and not present in the drawing,you can make a block with the new name from the existing one and insert and redefine it.
bad command! I want replace selected blocks , not all block in drawing
Thank you!