David Pierre Posté(e) le 30 octobre 2012 Posté(e) le 30 octobre 2012 Bonjour, je me prénomme David, je suis étudiant, dans le cadre de mon projet scolaire, je dois mettre en place des macros. Je souhaite faire une Macro, qui génére une Part avec dedans d'auttres parts nommés de manière différente. Quand j'enregistre la macro, je prends soin de bien modifier le nom des corps. Et pourtant quand j'execute la macro, au lieu de m'afficher le nom modifié, ce dernier m'affiche "Corps principal" "Corps de pièce 2" etc Ensuite, j'aimerai rajouter pour chaque "part" un matériau qu'on pourra choisir dans une liste déroulante Je vous mets en pièce jointe, ce que je souhaite obtenir ( à droite de la base fléche) et ce que j'obtiens (à gauche de la fléche) http://www.hostingpics.net/viewer.php?id=154110Sanstitre3.jpg Sub CATMain() Dim documents1 As Documents Set documents1 = CATIA.Documents Dim partDocument1 As PartDocument Set partDocument1 = documents1.Add("Part") Dim product1 As Product Set product1 = partDocument1.GetItem("Part1") product1.PartNumber = "Test" product1.DescriptionRef = "Test" Dim part1 As Part Set part1 = partDocument1.Part Dim bodies1 As Bodies Set bodies1 = part1.Bodies Dim body1 As Body Set body1 = bodies1.Add() part1.Update End Sub merci de votre aideCordialement
Chyps Posté(e) le 18 décembre 2012 Posté(e) le 18 décembre 2012 Bonjour David, Pour créer la CATPart avec les corps de pièce renommés, je te propose ce code: Sub CATMain() 'Déclarer une variable pour pouvoir manipuler la nouvelle CATPart facilement. Dim partPiece As PartDocument 'Décaration d'une variable de nombre entier: Dim i As Integer 'Créer une nouvelle CATPart et l'attribuer à la variable "partPiece". Set partPiece = CATIA.Documents.Add("Part") 'Renommer la pièce. partPiece.Product.PartNumber = "IPN-PO-XY-X-XY" 'Renommer le corps principal. partPiece.Part.Bodies.Item(1).Name = "IPN-PO-XXXX-XXX" 'Créer 3 nouveaux corps de pièce. For i = 1 To 3 partPiece.Part.Bodies.Add Next i 'Renommer les corps de pièce. partPiece.Part.Bodies.Item(2).Name = "NIN-Ø-XXXX" partPiece.Part.Bodies.Item(3).Name = "FICATIONDEN" partPiece.Part.Bodies.Item(4).Name = "Gurage" End Sub Ensuite je ne sais pas attribuer un matériau à une CATPart par VBA. Chyps
8_pool Posté(e) le 7 mars 2013 Posté(e) le 7 mars 2013 Salut, Le sujet date un peu, mais ça pourra servir à quelqu'un ... Pour appliquer un matériau, il faut d'abord ouvrir le catalogue des matériaux, sélectioner le matériau, l'appliquer (attention où : catpart ou corps de pièce) et fermer le catalogue. J'ai fait une macro qui affecte un matériau à un part mais en recalculant la densité pour avoir la masse souhaitée. Si ça intéresse quelqu'un, dites le ! Ciao8_pool Ciao :cool:
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant