效果如下:
一、所有图元颜色为bylayer
Sub 图元颜色跟随图层()
Dim item As AcadEntity
For Each item In ThisDrawing.ModelSpace
item.color = acByLayer
Next
ThisDrawing.Regen acActiveViewport
End Sub
二、与图层颜色相同(不是bylayer):
Sub 图元颜色跟随图层()
Dim item As AcadEntity
Dim itemlayer As AcadLayer
For Each item In ThisDrawing.ModelSpace
layername = item.Layer
Set itemlayer = ThisDrawing.Layers(layername)
item.color = itemlayer.color
Next
ThisDrawing.Regen acActiveViewport
End Sub