Random colors for Body, don’t want to color fasteners

I’m looking for a macro to use in assembly environment. Upon run the macro, the following should happen.

 

  1. All parts should be applied with random colors from a set of preselected (light appearance) colors.
  2. should be applied on body, not on surfaces
  3. I don’t want to color , so there should be option to select / deselect the items before apply color

Can any one  help me on the above Request. 

Regards,

Vivek Ravichandran

SolidworksSolidworks Add-ins