Rechercher dans la communauté
Affichage des résultats pour les étiquettes 'macro'.
3 résultats trouvés
-
Bonjour à toute et à tous Avant toute chose bonne année ! bonne santé et tout ce qui va avec :) J'ai fais une macro qui sur le papier parait simple mais il faut toujours qu'il y ait un problème inconnu dans sont exécution Mon problème réside dans le fait que lorsque j'utilise le / pour définir le point centrale de mon réseau polaire manuellement il n'exécute pas la suite de la macro après sélection. Merci par avance =)
-
Bonjour, Je suis encore un peu novice dans la partie macro Catia et je rencontre quelques soucis pour une liaison entre une CatPart et un Drawing. Un peu de contexte: Aujourd'hui j'ai une CatPart dans laquelle j'édite des paramètres (Concepteur/Reference/Nomenclature/Type/Materiau/Masse/...). Ces derniers sont ensuite intégrés via une macro aux propriété de la Part. J'ai dû créer des propriétés ajoutées pour certains champs (ce sont elles qui me posent problèmes). Voilà la macro pour avoir une idée (elle servira peut-être à quelqu'un un jour) ______________________________________________________________________________________________________________________________ Language="VBSCRIPT" Sub CATMain() Set partDocument1 = CATIA.ActiveDocument Set part1 = partDocument1.Part Set parametersconcepteur = part1.Parameters Set strParamconcepteur = parametersconcepteur.Item("Concepteur") Set parametersmateriau = part1.Parameters Set strParammateriau = parametersmateriau.Item("Materiau") Set parameterstype = part1.Parameters Set strParamtype = parameterstype.Item("Type") Set parameterstraitementmateriau = part1.Parameters Set strParamtraitementmateriau = parameterstraitementmateriau.Item("TraitementMateriau") Set parameterstraitementdesurface = part1.Parameters Set strParamtraitementdesurface = parameterstraitementdesurface.Item("TraitementDeSurface") Set parametersmasse = part1.Parameters Set strParammasse = parametersmasse.Item("Masse") Set parametersgx = part1.Parameters Set strParamgx = parametersgx.Item("Gx") Set parametersgy = part1.Parameters Set strParamgy = parametersgy.Item("Gy") Set parametersgz = part1.Parameters Set strParamgz = parametersgz.Item("Gz") Set parametersproprieteconcepteur = part1.Parameters Set strParamproprieteconcepteur = parametersproprieteconcepteur.Item("Propriétés\Concepteur") Set parametersproprieteinformations = part1.Parameters Set strParamproprieteinformations = parametersproprieteinformations.Item("Propriétés\Informations") Set parametersproprietemateriau = part1.Parameters Set strParamproprietemateriau = parametersproprietemateriau.Item("Propriétés\Materiau") Set parametersproprietetype = part1.Parameters Set strParamproprietetype = parametersproprietetype.Item("Propriétés\Type") Set parametersproprietetraitementmateriau = part1.Parameters Set strParamproprietetraitementmateriau = parameterstraitementmateriau.Item("Propriétés\TraitementMateriau") Set parametersproprietetraitementdesurface = part1.Parameters Set strParamproprietetraitementdesurface = parametersproprietetraitementdesurface.Item("Propriétés\TraitementDeSurface") Set parametersproprietemasse = part1.Parameters Set strParamproprietemasse = parametersproprietemasse.Item("Propriétés\Masse") Set parametersproprietegx = part1.Parameters Set strParamproprietegx = parametersproprietegx.Item("Propriétés\Gx") Set parametersproprietegy = part1.Parameters Set strParamproprietegy = parametersproprietegy.Item("Propriétés\Gy") Set parametersproprietegz = part1.Parameters Set strParamproprietegz = parametersproprietegz.Item("Propriétés\Gz") strParamproprieteconcepteur.Value = strParamconcepteur.Value strParamproprieteinformations.Value = "N/A" strParamproprietemateriau.Value = strParammateriau.Value strParamproprietetype.Value = strParamtype.Value strParamproprietetraitementmateriau.Value = strParamtraitementmateriau.Value strParamproprietetraitementdesurface.Value = strParamtraitementdesurface.Value strParamproprietemasse.Value = strParammasse.Value strParamproprietegx.Value = strParamgx.Value strParamproprietegy.Value = strParamgy.Value strParamproprietegz.Value = strParamgz.Value End Sub ______________________________________________________________________________________________________________________________ Ensuite j'ai un drawing dans lequel je souhaite remplir des paramètres qui sont identiques à la Part (Concepteur/Reference/Nomenclature/Type/Materiau/Masse/...) en auto via une macro. Les champs du cartouche sont remplis via la fonction "lier à un attribut". Actuellement ma macro n'arrive à récupérer que les propriétés standards de la Part (Definition/Nomenclature), mais je ne trouve pas comment coder les propriétées ajoutées manuellement (Masse/Materiau/Concepteur/Type/...). J'ai bien trouvé sur le site un vieux post pour faire de la liaison, mais cette dernière nécessite de nommer les cellules des champs du drawing. Or de mon côté je veux "simplement" récupérer les données de la Part pour les intégrer dans des paramètres spécifiques au Drawing. Quelqu'un(e) peut-il m'aider ? 🙂 Voici ma macro actuelle: ______________________________________________________________________________________________________________________________ Sub CATMain() set drawingDoc1 = CATIA.ActiveDocument Set parameters1 = drawingDoc1.Parameters Set strParamdrawdef= parameters1.Item("Designation") Set strParamdrawref= parameters1.Item("PartReference") Set strParamdrawdate= parameters1.Item("DateDeCreationDrawing") Set strParamdrawtype = parameters1.Item("Type") Set strParamdrawmat = parameters1.Item("Materiau") Set strParamdrawmasse = parameters1.Item("Masse") Set strParamdrawtraitmat = parameters1.Item("TraitementMateriau") Set strParamdrawtraitsurf = parameters1.Item("TraitementDeSurface") Set ParentVue = CATIA.ActiveDocument.Sheets.ActiveSheet.Views.Item(3).GenerativeLinks.FirstLink Set ParentVue = ParentVue.Parent Dim ActualDay, MyDay, MyMonth MyDay = Day(Now) MyMonth = Month(Now) If Len(MyDay) = 1 Then MyDay = "0" & MyDay If Len(MyMonth) = 1 Then MyMonth = "0" & MyMonth ActualDay = MyDay & "/" & MyMonth & "/" & Year(Now) strParamdrawdate.Value = ActualDay strParamdrawdef.Value = ParentVue.Product.Definition strParamdrawref.Value = ParentVue.Product.Nomenclature strParamdrawtype.Value = "le bon codage pour le type" strParamdrawmat.Value = "le bon codage pour le materiau" strParamdrawmasse.Value = "le bon codage pour la masse" strParamdrawtraitmat.Value = "le bon codage pour le TraitementMateriau" strParamdrawtraitsurf.Value = "le bon codage pour le TraitementDeSurface" 'Set drawingDoc1.Name = ParentVue.Product.Name End Sub ______________________________________________________________________________________________________________________________ Merci d'avance.
-
Bonjour, Je souhaiterai créer une macro, mais je n’arrive pas à trouver toutes les formules de commande souhaitées. Pour vous expliquer, je reçois des plans avec des blocs dans des blocs dans des blocs. Bien évidemment, dans ces blocs, tout a été changé manuellement. C’est-à-dire que la couleur et l’épaisseur de chaque trait a été modifié, et bien sûr, chaque bloc est différent. Je souhaiterai créer une macro qui ferait : - Ouvrir le bloc (^C^C_xopen), - Tout sélectionner (^C^C^Pai_deselect ^P), - Changer la couleur en « couleur du calque » (???), - Changer l’épaisseur de trait en « épaisseur du calque » (???), - Fermer le bloc en enregistrant (???). Pensez-vous que ce soit possible ? Si oui, quelle serait la formule complète à insérer dans ma macro ? En vous remerciant par avance pour un gain de temps monumental ! (Il s’agit de plan de stades de foot, et j’en ai une quarantaine …) Pour info, je suis sur Autcad 2022. Marine
- 7 réponses
-
- macro
- couleur du calque
-
(et 1 en plus)
Étiqueté avec :
