Set visProperties1 = CATIA.ActiveDocument.Selection.VisProperties visProperties1.SetRealColor 255,0,0,1 Salut, voila, je viens de m'enregistrer sur ce forum et je vois que ça galère aussi de votre coté... Je me présente, je m'appelle Christophe, je travaille chez un grand constructeur automobile allemand. Mes références en Catia V5: Part Design, Assembly, GSD, MTD, KWA, KWE, DMU et... bien sûr programmation VB ou plutot CATScript on va dire puisque les macros doivent aussi bien fonctionner sur Windows que sur Unix. La plus complète pour le moment fait environ 3000 lignes de code et couvre tout un process... Bref, pour ce qu'il en est des couleurs, c'est faisable uniquement en passant par la selection: ajouter le Feature la selection et lui appliquer une couleur. En code ça donne du (je reprends ce qui a été dit précédement: Set doc1 = CATIA.ActiveDocument Set part1 = doc1.Part Set bodies1 = part1.Bodies Set body1 = bodies1.Item(1) Set Shape1 = body1.Shapes.Item(2) (Ton document est un Part dans lequel tu comptes modifier la couleur du feature Shape1 tu rajoutes: set osel = CATIA.ActiveDocument.selection osel.clear osel.add Shape1 Set visProperties1 = osel.VisProperties visProperties1.SetRealColor 255,0,0,1 et le feature Shape1 prend le couleur RGB 255,0,0 (rouge) Ceci dans le cas où le feature est entièrement connu, ce qui est rarement le cas. tu peux également utiliser une fonction Search pour trouver le type de feature (Hole, POcket, Pad, Line...) ou alors, à l'aide de la fonction selectelement, selectionner le feature directment soit dans l'arbre, soit dans la géométrie. Ex: pour la selection (je code en live, il se peut que tout ne soit pas 100% mais ça donne un truc du style): Sub CATMAin() set osel = catia.activedocument.selection osel.clear dim afilter(1) afilter(0) = "Hole" afilter(1) = "Pad" sstatus = osel.selectelement(afilter, "Select a Pad or a Hole", False) osel.endselectelement Set visProperties1 = osel.VisProperties visProperties1.SetRealColor 255,0,0,1 End sub du coup l'objet que tu as selectionné prends la couleur rouge. Pour aller un tout petit peu plus loin (par ex selectionner plusieurs objets et leur imputer une meme couleur) Sub CATMAin() set osel = catia.activedocument.selection osel.clear dim afilter(1) afilter(0) = "Hole" afilter(1) = "Pad" dim aobjects() redim aobjects(0) DO sstatus = osel.selectelement(afilter, "Select a Pad or a Hole", False) If sstatus <> "Normal" then osel.endselectelement 'pas sûr si c necessaire ça osel.clear Exit do Else set oobject = osel.item(1).value set aobjects(ubound(aobjects)) = oobject redim preserve aobjects(ubound(aobjects)+1) osel.endselectelement osel.clear End if Loop osel.clear for i=0 to ubound(aobjects)-1 osel.add aobjects(i) Next Set visProperties1 = osel.VisProperties visProperties1.SetRealColor 255,0,0,1 End sub Pour arreter la selection il te suffit de faire un "undo" mais tu peux très bien utiliser une MSGBOX à chaque boucle (VBYesNo) voila voila un truc comme ça, bien sûr à optimiser (au niveau du osel.clear par ex) bon courage! Salutations Christophe