Savoir depuis Excel si une Mise En Plan possède des calques

Bonjour,

Je suis dans une situation ou nous avons lancé une chasse aux Sorcières calques pour cela j'ai deja un tableau excel qui me liste toutes mes mise en plan sur le serveur et je voudrait que depuis excel il soit capable de savoir si la mise en plan listér possede un calque donc connexion entre excel et Solidworks a etablir et surtout qu'utiliser pour connaitre la presence de calques

Merci d'avance :)

Salut,

Je vois que tu mis la balise SolidFace à ta question. Quel est le logiciel utilisé ?

2 « J'aime »

Oups erreur pas reveille ce matin Il s'agit d'une liaison a faire en tre EXCEL et SOLIDWORKS et non solidface :/

Je pense qu tu devrais t'intéresser au LayerManager et particulièrement à sa méthode GetLayerList.

Et ensuite rechercher le calque en question dans la liste obtenue.

Cela risque d'être long. Car tu devars donc boucler et ouvrir l'ensemble des MEP de ton serveurs. Par expérience cela impose de vider régulièrement la mémoire du processus SW. En VBA je pense que tu seras obliger de redémarrer SW régulièrement.

1 « J'aime »

Sinon même si ce n'est pas vraiment la question pourquoi ne pas faire cela avec le logiciel integration des outils mycad que tu possède?

Tout dépend de ce que tu veux réaliser ensuite.

Sinon à partir de ton fichier excel tu enregistre la liste des fichiers en  csv que tu importe ensuite dans intégration tu recherche ton calque avec la fonction si le plan contient un nom de calque particulier et ensuite tu supprime ce calque tu le renomme ou tu liste simplement les fichier qui contiennt ce calque et tout ça sans avoir de macro à réalisé et en plus tu peux programmer le vidage de la mémoire à chaque fermeture de plans.

4 « J'aime »

Bien vu sbadenis !

C'est effectivement bien plus simple. ;-)

sbadenis je ne connaissait pas cet outil je regarde sa en ce moment meme mais il me parait extrement lent comparé a Excel :/ je vais voir si en operation je peut lui dire d'executer une macro qui suprime tous les calques

Cet outil est très puissant pour des taches répétitive.

Pout ce que tu veux réaliser importe ton fichier csv avec la liste de toutes tes mises en plan (ou découper en plusieures fichiers csv si trop volumineux)

Puis tu modifie à ta convenance la règle ci-joint (my cadtools 2016)

Il suffit de remplacer les nom de claque dans conditions et opérations par tes nom de calques et cela devrait fonctionner.

 

EDIT: après relecture il suffit de mettre étoile (*) dans la 1ère opération pour qu'il supprime tous les calques.

Du coup supprime ensuite le 2ème opération devenu inutile

 


suppression_de_calque.mcact
1 « J'aime »

Merci sbadenis pour m'avoir fait découvrir cet outil il me reste plus qu'a atendre une petite heure pour qu'il traite les 15000 plan :)

1 « J'aime »

Je pense que tu en as  pour un peu plus d'une heure alors!

2 « J'aime »

Existe t'il un parametre a cocher pour que l'instance Solidworks qu'utilise myCAD Integration soit non visible ? sa accelererais peut etre un peu les chose ?