Macro Changement de la couleur d'un Part dans un Product suivant une recherche du nom dans un tableau excel
Page 1 sur 1
Macro Changement de la couleur d'un Part dans un Product suivant une recherche du nom dans un tableau excel
Bonjour à tous,
Dans le cadre de mon développement personnel, je cherche à réaliser une macro permettant le changement de couleur d'un Part présent dans un Product.
Celle-ci devra comparer alors les noms des CatPart présents dans le Product avec ceux d'un fichier excel et changer la couleur de ceux-là présents dans la liste et ne pas modifier la couleur de ce qui ne sont pas présent mais modifier leurs opacités.
J'ai commencé à écrire mais mon niveau de connaissance et compétence ne permet pas de me débrouiller tout seul.
Voici ce que j'ai écris et assemblé de ce que j'ai pu trouvé sur le net :
Sub CATMain()
CATIA.DisplayFileAlerts = False
Dim Message, Style, Title, response, MyString
Message = ("La macro va modifier la couleur de tous les CATParts en rouge" & (Chr(13)) & "" & (Chr(13)) & " Voulez-vous continuer ?")
Style = vbYesNo + vbDefaultButton1 'Définit le type de bouton. Button1 type par défaut
Title = "Purpose "
response = MsgBox(Message, Style, Title)
If response = vbYes Then 'l utilisateur selectionne oui.
MyString = "Yes"
Dim productDocument1 As Document
Set productDocument1 = CATIA.ActiveDocument
Dim selection1 As Selection
Set selection1 = productDocument1.Selection
selection1.Search "CATPrtSearch.MechanicalFeature,all"
Set visPropertySet1 = selection1.VisProperties
visPropertySet1.SetRealColor 0, 255, 0, 1
Set visProperties1 = CATIA.ActiveDocument.Selection.VisProperties
visProperties1.SetRealOpacity 175, 1
selection1.Clear
selection1.Search "CATAsmSearch.Part,all"
Set visPropertySet1 = selection1.VisProperties
visPropertySet1.SetRealColor 0, 255, 0, 1
Set visProperties1 = CATIA.ActiveDocument.Selection.VisProperties
visProperties1.SetRealOpacity 175, 1
'selection1.Clear
'Ouverture du fichier excel
Set objexcel = CreateObject("Excel.Application")
Set objworkbook = objexcel.Workbooks.Open("C:\Users\Documents\MACRO CATIA V1\Macro CATIA.xlsx")
objexcel.Visible = True
Dim specsAndGeomWindow1 As Window
Set specsAndGeomWindow1 = CATIA.ActiveWindow
Dim viewer3D1 As Viewer
Set viewer3D1 = specsAndGeomWindow1.ActiveViewer
viewer3D1.Reframe
Dim viewpoint3D1 As Viewpoint3D
Set viewpoint3D1 = viewer3D1.Viewpoint3D
End If
End Sub
Cependant ce que vous pouvez voir au-dessus va modifier la couleur et la transparence de tous les CatParts présents dans le document actif.
Merci d'avance pour le temps que vous passerez à lire et réfléchir sur mon sujet.
Dans l'attente de vous lire.
Amicalement.
Ainzoalgoan.
Dans le cadre de mon développement personnel, je cherche à réaliser une macro permettant le changement de couleur d'un Part présent dans un Product.
Celle-ci devra comparer alors les noms des CatPart présents dans le Product avec ceux d'un fichier excel et changer la couleur de ceux-là présents dans la liste et ne pas modifier la couleur de ce qui ne sont pas présent mais modifier leurs opacités.
J'ai commencé à écrire mais mon niveau de connaissance et compétence ne permet pas de me débrouiller tout seul.
Voici ce que j'ai écris et assemblé de ce que j'ai pu trouvé sur le net :
Sub CATMain()
CATIA.DisplayFileAlerts = False
Dim Message, Style, Title, response, MyString
Message = ("La macro va modifier la couleur de tous les CATParts en rouge" & (Chr(13)) & "" & (Chr(13)) & " Voulez-vous continuer ?")
Style = vbYesNo + vbDefaultButton1 'Définit le type de bouton. Button1 type par défaut
Title = "Purpose "
response = MsgBox(Message, Style, Title)
If response = vbYes Then 'l utilisateur selectionne oui.
MyString = "Yes"
Dim productDocument1 As Document
Set productDocument1 = CATIA.ActiveDocument
Dim selection1 As Selection
Set selection1 = productDocument1.Selection
selection1.Search "CATPrtSearch.MechanicalFeature,all"
Set visPropertySet1 = selection1.VisProperties
visPropertySet1.SetRealColor 0, 255, 0, 1
Set visProperties1 = CATIA.ActiveDocument.Selection.VisProperties
visProperties1.SetRealOpacity 175, 1
selection1.Clear
selection1.Search "CATAsmSearch.Part,all"
Set visPropertySet1 = selection1.VisProperties
visPropertySet1.SetRealColor 0, 255, 0, 1
Set visProperties1 = CATIA.ActiveDocument.Selection.VisProperties
visProperties1.SetRealOpacity 175, 1
'selection1.Clear
'Ouverture du fichier excel
Set objexcel = CreateObject("Excel.Application")
Set objworkbook = objexcel.Workbooks.Open("C:\Users\Documents\MACRO CATIA V1\Macro CATIA.xlsx")
objexcel.Visible = True
Dim specsAndGeomWindow1 As Window
Set specsAndGeomWindow1 = CATIA.ActiveWindow
Dim viewer3D1 As Viewer
Set viewer3D1 = specsAndGeomWindow1.ActiveViewer
viewer3D1.Reframe
Dim viewpoint3D1 As Viewpoint3D
Set viewpoint3D1 = viewer3D1.Viewpoint3D
End If
End Sub
Cependant ce que vous pouvez voir au-dessus va modifier la couleur et la transparence de tous les CatParts présents dans le document actif.
Merci d'avance pour le temps que vous passerez à lire et réfléchir sur mon sujet.
Dans l'attente de vous lire.
Amicalement.
Ainzoalgoan.
Ainzoalgoan- timide
- Messages : 4
Date d'inscription : 02/09/2021
Localisation : Marseille
Sujets similaires
» comment sélectionner une part dans un product
» Lancement d'une même macro dans une Part ou un Product
» Macro pilote tableau catia via excel
» Dernière ligne "non-nulle" d'un tableau excel à partir d'une macro CATIA
» Macro qui réordonne les parts dans le product
» Lancement d'une même macro dans une Part ou un Product
» Macro pilote tableau catia via excel
» Dernière ligne "non-nulle" d'un tableau excel à partir d'une macro CATIA
» Macro qui réordonne les parts dans le product
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum