I am doing this for each entity I create: Set colour = AcadApplication.GetInterfaceObject("AutoCAD.AcCmColor.16") .TrueColor = colour .Linetype = "BYLAYER" .Lineweight = acLnWtByLayer I would prefer to either: a) have a method where i can pass the object in to update it as above. But then each object is different, so is there a base object it can be passed as? or b) store the current wieght, colour,style settings and update them all to bylayer. This would do away with the solution a and then restore them at the end. I can work out how to get active layer and restore. But I can't work out how to get active style,wieght, colour, set them all to bylayer and restore. Advice on doing either solution and whichever is most efficient please. Thanks. Andrew