renommer des plans qui se trouvent dans un set géométrique
2 participants
Page 1 sur 1
renommer des plans qui se trouvent dans un set géométrique
Bonjour
Je veux renommer les plans (plan.xxxx) qui se trouvent dans un set géométrique.
J'arrive à sélectionner les plans qui se trouvent mon set géométrique ("Constructions geometriques")
Sub CATMain()
Dim partDocument1 As PartDocument
'test si c'est un CATPART
On Error Resume Next
Set partDocument1 = CATIA.ActiveDocument
On Error GoTo 0
If partDocument1 Is Nothing Then
MsgBox "Lancer la macro depuis un CATPart actif!", vbExclamation, "Product non actif"
Exit Sub
End If
'SELECTIONNE LES PLAN DANS LE SET GÉOMÉTRIQUE
Dim selection1 As Selection
Set selection1 = partDocument1.Selection
Dim part1 As Part
Set part1 = partDocument1.Part
Dim hybridBodies1 As HybridBodies
Set hybridBodies1 = part1.HybridBodies
Dim myhybridBody As HybridBody
Set myhybridBody = hybridBodies1.Item("Constructions geometriques")
selection1.Add myhybridBody
selection1.Search "(CATPrtSearch.Plane.Name=*plan* - (CATPrtSearch.Plane.Name='Plan xy'+ CATPrtSearch.Plane.Name='Plan yz'+ CATPrtSearch.Plane.Name='Plan zx')),sel"
selection1.Search "(CATPrtSearch.Plane.Name=*plan*),sel"
voila ce que je veux faire: pour chaque plans qui se trouvent dans la sélection, je veux renommer ce plan
'RENOMMAGE DES PLANS
Dim Plan As HybridShapePlaneOffset
Dim i As Integer
For Each Plan In selection1 ..........je bloque ici !
Plan.Name = "P" & i ' nouveau nom du plan
i = 1 + 1
Next
Je veux renommer les plans (plan.xxxx) qui se trouvent dans un set géométrique.
J'arrive à sélectionner les plans qui se trouvent mon set géométrique ("Constructions geometriques")
Sub CATMain()
Dim partDocument1 As PartDocument
'test si c'est un CATPART
On Error Resume Next
Set partDocument1 = CATIA.ActiveDocument
On Error GoTo 0
If partDocument1 Is Nothing Then
MsgBox "Lancer la macro depuis un CATPart actif!", vbExclamation, "Product non actif"
Exit Sub
End If
'SELECTIONNE LES PLAN DANS LE SET GÉOMÉTRIQUE
Dim selection1 As Selection
Set selection1 = partDocument1.Selection
Dim part1 As Part
Set part1 = partDocument1.Part
Dim hybridBodies1 As HybridBodies
Set hybridBodies1 = part1.HybridBodies
Dim myhybridBody As HybridBody
Set myhybridBody = hybridBodies1.Item("Constructions geometriques")
selection1.Add myhybridBody
selection1.Search "(CATPrtSearch.Plane.Name=*plan* - (CATPrtSearch.Plane.Name='Plan xy'+ CATPrtSearch.Plane.Name='Plan yz'+ CATPrtSearch.Plane.Name='Plan zx')),sel"
selection1.Search "(CATPrtSearch.Plane.Name=*plan*),sel"
voila ce que je veux faire: pour chaque plans qui se trouvent dans la sélection, je veux renommer ce plan
'RENOMMAGE DES PLANS
Dim Plan As HybridShapePlaneOffset
Dim i As Integer
For Each Plan In selection1 ..........je bloque ici !
Plan.Name = "P" & i ' nouveau nom du plan
i = 1 + 1
Next
Re: renommer des plans qui se trouvent dans un set géométrique
D'après ce que je comprends tu cherches tout les plans dont tu veux changer le nom.
Je pense qu'il y a un "count" a faire
i = selection1.count
for b_boucle=1 to i
selection(i).Name = "P" & i
i = 1 + 1
Next
ou un truc dans le même esprit
Je pense qu'il y a un "count" a faire
i = selection1.count
for b_boucle=1 to i
selection(i).Name = "P" & i
i = 1 + 1
Next
ou un truc dans le même esprit
Guss_- Admin
- Messages : 530
Date d'inscription : 08/01/2010
Re: renommer des plans qui se trouvent dans un set géométrique
oui tu as raison.....j'ai trouver entre temps..voici le code ....merci guss
Dim Element As HybridShape
Dim NameElement As String
Dim i As Integer
Dim NbPlan As Integer
Dim NbSurface As Integer
Dim myHybridBodies As HybridBodies
Set myHybridBodies = myHybridBody.HybridBodies
UserFormSelectionElement.Show 'montre la fenètre de fin de traitement
For i = 1 To myHybridBodies.Count
For Each Element In myHybridBodies.Item(i).HybridShapes
NameElement = Element.Name
Debug.Print NameElement
If Left(NameElement, 4) = "Plan" Then
Element.Name = "p" & Mid(NameElement, 6)
NbPlan = NbPlan + 1
End If
If Left(NameElement, 7) = "Surface" Then
Element.Name = "s" & Mid(NameElement, 9)
NbSurface = NbSurface + 1
End If
Debug.Print Element.Name
Next
Next
Dim Element As HybridShape
Dim NameElement As String
Dim i As Integer
Dim NbPlan As Integer
Dim NbSurface As Integer
Dim myHybridBodies As HybridBodies
Set myHybridBodies = myHybridBody.HybridBodies
UserFormSelectionElement.Show 'montre la fenètre de fin de traitement
For i = 1 To myHybridBodies.Count
For Each Element In myHybridBodies.Item(i).HybridShapes
NameElement = Element.Name
Debug.Print NameElement
If Left(NameElement, 4) = "Plan" Then
Element.Name = "p" & Mid(NameElement, 6)
NbPlan = NbPlan + 1
End If
If Left(NameElement, 7) = "Surface" Then
Element.Name = "s" & Mid(NameElement, 9)
NbSurface = NbSurface + 1
End If
Debug.Print Element.Name
Next
Next
Re: renommer des plans qui se trouvent dans un set géométrique
cool
C'est vrais que ça peut être très utile ce genre de macro
C'est vrais que ça peut être très utile ce genre de macro
Guss_- Admin
- Messages : 530
Date d'inscription : 08/01/2010
Sujets similaires
» Couleur dans un Set Géométrique
» VBA Changer de set Geometrique
» Renommer WP ou Part au 2eme niveau d'une branche
» Renommer tous les parts et products avec formules
» Renommer les trous d'une CATPart
» VBA Changer de set Geometrique
» Renommer WP ou Part au 2eme niveau d'une branche
» Renommer tous les parts et products avec formules
» Renommer les trous d'une CATPart
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum