Can't change AutoCAD block objects to another color

Issue:

You receive an AutoCAD drawing from another user and need to change block objects to another color for printing. 

But placing all those blocks on a different layer or changing the block color in the Properties palette doesn’t change the block object colors.

For example in this file all the computer blocks should take on the green color of layer 'Computer' or the color assigned in Properties but remain yellow:

Causes:

Block objects were created with a specific color instead of ByLayer or ByBlock.

Block objects created with a specific color will always retain that color.  Placing them on a different layer or changing their color won’t change the block color. 

For example, in this drawing block objects were created with the Color=Yellow instead of ByLayer/ByBlock.

In the Block Editor the objects properties confirm they're all set to Yellow:

How Block objects inherit layer color properties: Block Object Properties Reference.

Solution:

If you don't have many blocks to update use the Block Editor.

Change all the block objects to Color=By Layer and place on Layer=in the Properties palette.

When there are a lot of blocks to update you can update them all using the SETBYLAYER command.

Change blocks object to Color=ByLayer

Use the SETBYLAYER AutoCAD command to quickly change block object properties to Color=ByLayer.

Type in Setbylayer at the command prompt:

Or on the Home Ribbon on the Modify tab:

Select the Settings option to verify that Color (and if needed Linetype, Lineweight, Material, Plot Style and Transparency) is selected.

By default ALL these options are selected.  Or use the SETBYLAYERMODE variable.

If you don’t have many blocks select each block manually in the graphics window to add them to the selection set:

If there are many blocks in the drawing use the QSELECT command before invoking SETBYLAYER.

Choose the  qselect icon in the Properties Palette or type in the QSELECT command.

In the Quick Select dialog box select these options to select ALL the drawing blocks:

  • Object type: INSERT
  • Operator: Select All

Once the blocks are selected, type in SETBYLAYER and click Enter.

Choose Yes to change Color(and other properties) to ByLayer:

All the blocks are now updated to the layer color:

Place block objects on Layer 0

If the block objects also need to be placed on Layer 0 use the Block Editor to change the block object properties:

Select all the block objects and change the layer properties to Layer 0:

About the Author

Joanna Gryszka

Manufacturing Technical Support Specialist<br><br>Joanna has over eight years of experience working with Autodesk products. She started supporting core AutoCAD and network installations of all Autodesk products. She now has five years of experience with Inventor. <br> She graduated from Mechanical Engineering and has been providing solutions to clients and dedicating her knowledge to the Solution Center since then.

More Content by Joanna Gryszka
Previous Article
AutoCAD: Dimensions in Layout Isometric View do not match Model Space
AutoCAD: Dimensions in Layout Isometric View do not match Model Space

This is caused due to scaling. You must set the Dimension Style to the Scale of the Viewport.

Next Article
Loading a Missing Interface Element (tab) to AutoCAD Based Programs
Loading a Missing Interface Element (tab) to AutoCAD Based Programs

Here is the issue, you’ve just installed a new set of tools which are supposed to have their own tab in Aut...