xav18000 Posté(e) le 5 août 2009 Posté(e) le 5 août 2009 Ma mission est de réaliser une macro qui génèrera une nomenclature des Part activées (et uniquement celles-ci !!) par l'intermédiaire d'une Scène dans un Product. J'explique la situation : qd j'ouvre un product, il est a peu près composé de 5000 Parts qui sont désactivées (réglale des Settings : Do not activate default shapes on open) afin de pouvoir l'ouvrir sinon Catia plante.Dans ce produit je dispose de plusieurs scènes me permettant d'activer uniquement les pièces qui minteressent puis par un "apply scene on assembly" je récupère uniquement à l'écran les pièces sur lesquelles je dois travailler. Il m'intéresserait à ce moment de récupérer le nom de ces pièces afin de réaliser une nomenclature.Car lorsque l'on génere la nomenclature , elle contient toutes les Part du Product et on ne peut pas générer la nomenclature à partir de la scène. Alors deux questions :- y'a t'il un moyen de génerer une nomenclature à partir de la scène ?- comment faire pour générer seulement la nomenclature des pièces activées ? Je suis déjà partis sur plusieurs pistes :- enregistrement de macros afin de voir ce qu'il se passe pendant le passage scène/Product et activation/désactivation mais je nài pas trouvé la solution- A l'aide de l'outils "Edit-->Search" on peut mettre en surbrillance et retrouver uniquement le nom des pièces affichées à l'ecran. Connaissez vous une commande permettant soit de retrouver le nom des pièces activées, surlignées ou une commande relevant le nom dans le cadre de la recherche ?? Un peu comme la méthode utilisée pour retrouver le nom d'éléments via la commande CATIA.StatusBar (voir le sujet en question sur le forum)Ou encore en passant par la commande CATIA.ActiveDocument.Selection.Add(...) Qu'en pensez vous ? je ne m'en sors pas tt seul !!
xav18000 Posté(e) le 7 août 2009 Auteur Posté(e) le 7 août 2009 Afi de mieux comprendre, j'utilise déja cette macro permettant de récupérer le nom des esquisses présentes dans une Part : Dim myHybridBodies 'As mecmod.HybridBodiesDim iel As IntegerDim as_Liste As String as_Liste = " " 'sketches of HybrydbodiesFor i = 1 To CATIA.ActiveDocument.Part.HybridBodies.Count Set myHybridBodies = CATIA.ActiveDocument.Part.HybridBodies.Item(i) For iel = 1 To myHybridBodies.HybridSketches.Count Set mySketch = myHybridBodies.HybridSketches.Item(iel) as_Liste = as_Liste & vbCrLf & mySketch.Name Next ielNext i MsgBox (as_Liste) ------------------------------------------------------- j'aimerai la modifier afin de relever les noms des Part dans un Product, ce ne doit pas etre bien difficile mais l'editeur VB me pose problème lorsque je lui spécifie un chemin avec des Product...qq'un connait-il les spécifications à employer dans un Product ?? Voici la ligne qui me pose problème : For i = 1 To CATIA.ActiveDocument.Product.Part.Count merci d'avance si vous avez la réponse
emilie3183 Posté(e) le 10 août 2009 Posté(e) le 10 août 2009 salut,je suis pas du tout experte en cao, mais d'après ce que j'ai compris, ce que tu veux c'est récupérer le nom des parts sélectionnées dans ton product ?j'ai fait une macro qui fait ça.. en fait elle sélectionne les pièces que je veux, récupère les noms et les exporte en csv (que tu peux lire avec excel ou même le bloc notes!)...dis moi si ça t'intéresse..
xav18000 Posté(e) le 24 août 2009 Auteur Posté(e) le 24 août 2009 Salut, je pense en effet que ta macro peut me rendre service. Peux-tu me dire ce qu'elle fait plus precisemment ? Par quel procédé ta macro connait les pièces que tu veux selectionner ?Dis-moi comment tu préfères me faire parvenir ton code. Merci
xav18000 Posté(e) le 15 octobre 2009 Auteur Posté(e) le 15 octobre 2009 Bonjour à tous ceux qui liront ce sujet, et qui sont intéréssés pour créer des nomenclature partielles ! à titre indicatif, on peut arriver a récupérer les Parts visibles à l'écran et par la suite leur nom grace à l'outil de recherche Catia. Cela se traduit dans le code par la ligne :selection1.Search "Type=*,scr" Pour récupérer toutes les Parts du produit, il suffit de demander :selection1.Search "Type=Part,all" Bonne programmation Xavier
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