Tout d’abord, merci au forum d’exister, c’est une vraie source de solution, et merci à tous de vos participations, qui font vivre celui-ci!
Je viens t’intégrer une nouvelle entreprise et j’aimerai mettre en place de nouveaux moyens de travail.
Pour cela, je cherche une macro qui me générerai, depuis la pièce 3D sldprt, un fichier STEP avec dans le nom du fichier, le nom de la pièce + la révision, soit le format NomPièce_Révision.stp, avec si possible une icone lorsque l’on est sur la fenêtre de la pièce dans la barre des taches.
Et pour les mises en plans, une macro qui fait l’export de la mise en plan, avec la révision et la description de la pièce, soit le format NomPièce_révision - description.pdf, tout en reprenant les propriétés personnalisées de la pièces ( c’est au niveau de la pièce que les champs révision et description sont édités).
Espérant avoir été précis dans ma demande, je vous remercie par avance pour votre aide apportée!
Bonjour,
En cumulant des macros déjà disponibles, on peut réaliser une macro qui fait le job en fonction du type de fichier ouvert (une seule icône de lancement dans l’interface).
C’est bien aussi de se lancer si on a un peu de connaissance en VBA
J’ai un peu de temps sur ma pause du midi, donc quel est le nom des propriétés perso (révision et description) que je puisse fournir le code final directement?
On est d’accord que Nom Fichier = Nom Pièce?
Est-il possible d’avoir des lignes de commentaires dans le code ? Pour que je puisse être guidé et peut être la faire évoluer dans le temps, sans embeter tout le monde
De plus, pour la demande d’une icone dans la barre des taches de Solidworks, comment cela marche t-il ?
Re,
Ci-joint le code commenté au maximum.
Les .dot n’ayant pas de propriétés j’ai mis xxx, à changer par les bonnes valeurs Macro-PDF_STEP.swp (87,5 Ko)
Merci une fois de plus à Cyril.f, la macro fonctionne super bien!!
Juste un bémol pour moi, car à en lire d’autre post (ici et sur d’autre forum), les macros ne peuvent aller lire les propriétés personnalisées ?
Je m’explique par propriétés personnalisées:
afin de d’avoir une interface agréable, avec liste déroulante, calendrier à cliquer, etc… j’ai utilisé l’éditeur de formulaire
Y’a t-il une astuce soit pour renseigner les champs de l’onglet personnaliser ( et eux lisibles par les macros) ou que les macros puissent lire les champs dans l’onglet spécifiques à la configuration ?
De plus, une fois que j’ai renseigner les champs de ma pièce, ils ne sont pas automatiquement écris dans les champs des propriétés de la mise en plan ( de la pièce concernée)
Bonjour,
Si c’est lisible via les macros quand le fichier est ouvert dans SW. C’est uniquement si on souhaite les lire sans ouvrir le fichier c’est là que ça se complique.
Dans la macro que j’ai fourni on peut ajouter un traitement pour savoir s’il y a des infos dans l’onglet spécifique à la configuration (uniquement sur part et asm).
Cyril.f pourrais-tu me faire savoir ce que je dois écrire dans la macro pour lire les champs dans spécifiques à la configuration ?
Et est-il possible d’écrire les champs spécifiques à la configuration édités dans la pièce, directement dans les champs de l’onglet personnaliser de la MEP ?
Les macros peuvent lire les propriétés personnalisé ou bien celles spécifiques à la configuration par contre pas la même fonction (de macro) pour l’une ou l’autre.
Pour le dernier point il existe des macros pour reprendre les propriétés de la pièces et les ré-écrire dans la MEP, mais les propriétés sont également accessible depuis la MEP en allant chercher la propriété de la pièce lié à la vue.
Exemple pour la matière: $PRPSHEET:« Material » va chercher la matière de la pièce à la vue référencé dans la MEP, quand $PRP:« DATE » fait référence à la propriété de la MEP: https://help.solidworks.com/2020/french/EnterprisePDM/Admin/t_creating_SOLIDWORKS_PRP_PRPSHEET_links.htm
Je souhaite que les champs de la carte de propriété soit renseigné par les champs renseignés dans la pièce et pas uniquement le cartouche.
Pour le moment, je renseigne les propriétés de la pièce mais dans la mise en plan, les champs de la carte de propriété sont vides, alors que mon cartouche suit bien ceux de la pièce
de ce fait, comme les champs sont vides, la macro ne s’execute pas comme elle devrait
Deux possibilités, soit on récupère le 3D rattaché au plan et on injecte les valeurs dans les propriétés de la mise en plan.
Autre solution on scanne le cartouche et on récupère les propriétés qui nous intéressent et on les copies dans les propriétés de la mise en plan.
Pour récupérer les valeurs qui sont dans le spécifique à la configuration d’un part ou asm il faut changer dans ces lignes: sRevision = swModel.CustomInfo2("", "xxx")
Par:
sRevision = swModel.CustomInfo2("Défaut", "xxx")
Défaut étant le nom d’une configuration. Si plusieurs configurations il faut scanner les différentes infos dans le cas où il y aurait des différences et appliquer le bon traitement.
Les deux sont simples.
Après autre solution dans les propriétés il suffit de mettre dans la colonne expression $PRPSHEET:« xxx » et ça permet de lier les propriétés et les valeurs.
A voir si ça se propage dans le formulaire