Lynkoa

Macro pour lancer et valider le smartproperties
  • Topic:
    • SOLIDWORKS

  • 13 answers
  • 4531 views

By sbadenis The 23 October 2015

Bonjour,

Je souhaite faire une macro afin de lancer le smartproperties d'axemble et le valider afin de pouvoir mettre à jour certaine propriétés pilotées uniquement par le smartproperties.

Le problème je ne connait pas le vba et que l'enregistreur de macro ne semble pas fonctionner pour cette macro qui semble être pourtant plutôt simple.

Le but est d'ensuite incorporer cette macro pour en faire une macro feature qui mettrait à jour les propriétés de la pièces à chaque changement.

J'ai beau regarder sur google et autre je dois pas taper les bons éléments de recherche pour lancer une macro depuis une macro SW...

Best Answer

Other answers

.PL | 57135 point(s)

Bonjour,

Comment tu veux lancer cette macro ? Avec un bouton ? Un raccourcis clavier ? A l'ouverture d'un fichier ?

 

sbadenis | 21717 point(s)

A chaque modification du fichier car on recupère la designation de la pièce pour faire nos commande automatiquement avec notre ERP et il faut que la largeur de bande ainsi que la longueur dans la designation se mette à jour et cela se fait uniquement lors du lancement de smartproperties.

 

EDIT: D'ou le souhait d'incorporer cette macro dans une macro feature

Pour ceux à qui cela ne parle pas

http://www.lynkoa.com/tutos/r%C3%A9alisation-dune-macro-fonction-dans-so...

 

sbadenis | 21717 point(s)

Le problème c'est que 1 pièce sur 500 seulement à beson de cette macro donc je ne peux pas la lancer via Custom Toolbar / local help

Je vois plutot a macro feature mais pour cela il faudrait que je fasse un macro qui lance une autre macro :SmartProperties 2014-Auto.swp et qui ne se trouve pas dans le même répertoire que la premiere macro

Exemple répertoire courant des macro C:\Macro et celle de smartproperties dans C:\Smartproperties

Et ce avec Run macro surement

.PL | 57135 point(s)

Ah mais je viens de relire, en fait il n'y a probablement pas besoin du SmartProperties.

Quelles sont les propriétés personnalisées mises à jour ?

 

Question subsidaire :

Comment être sûr que la personne lancera plus la macro que validera le smartproperties ?

sbadenis | 21717 point(s)

J'avais trouvé la même chose sauf RunMacro au lieu de RunMAcro2, j'essais ça et je repasse ensuite dire le résultat.

Sinon comment être sur que la personne lance la macro en fesant une feature macro car elle se lance manuellement pour la 1ère fois si j'ai bien compris et ensuite elle se lance toute seule à chaque modification voir exemple macro centre de gravité ci-jointe (mais le code est vérouillé par l'auteur ->Axemble)

 

EDIT : pour les propriétés à mettre à jour elles sont multiples suivant le type de pièce

1-) Longueur et largeur d'une tôle pour ce qui est en tôlerie

2-) Longueur de bande calculé en fonction du type de la bande bande

   - PVC = Lgcourroie+4‰

   - Modulaire = Lgcourroie+100mm

   - .....

3-) Désignation qui reprend parfois certaine des propriété cité ci-dessus

.PL | 57135 point(s)

Vu que tu as la maintenance MyCAD, demande leur directement, et donne nous la réposne ici après :)

sbadenis | 21717 point(s)

Question posé à la maintenance merci @.PL

La macro en elle même fonctionne bien, elle se lance, insert la macro dans l'arborescence de la pièce, lance le smartproperties le valide. Ensuite si on fait la moindre modification de côte elle se lance bien par contre j'ai un soucis suivant la méthode employée cela plante.

Si je modifie une côte et valide dans la boite de dialogue puis fait Ctrl+Q ou reconstruire, pas de soucis.

Par contre si je modifie la côte et reconstruit dans la boite de dialogue avant de valider alors le smartproperties plante.

Si quelqu'un à une idée pour contourner cela le code de la macro est joint dans le fichier texte (impossibie de le mettre dans la réponse car réponse trop longue)

Pour le plantage la maintenance n'a pas d'idée c'est pourquoi je fait appel à la communauté!

Voici la réponse de la maintenance:

"Le problème doit venir qu'on essaie de lancer un AddIn et Solidworks ne doit pas aimer cela pendant le déroulement d'une macro feature."

 

Pour l'instant je regarde dans le smartproperties en essayant d'ajouter une propriété de type executer avec option attendre la fin de l'application ou avec remettre à jour les propriété.