Pour les noob comme nous en création de macro, il y a une fonctionnalité de capture des fonctions sous SW. Tu lances l'enrgistrement, tu fais ta manipulation et SW créée automatiquement le code de ce que tu as fait à l'écran.
Avec ça tu as 90% de ta macro.
Il ne te manquera que la (les?) boucle(s) permettant de changer de fichier .sldblk ainsi que la déclaration des variables (nom de fichier d'enregistrement, sûrement quelques variables temporaires en plus..).
J'ai regarder le lien sur 3dexpérience, j'ai mis à jour les données (chemin de mes fichiers et autres) mais rien ne se passe au lancement de la macro. j'ai exécuter la dite macro avec un fichier ouvert, depuis une esquisse, sans rien d'ouvert rien ne se passe... Domage
J'ai bien enregistré une macro qui fait le job à peu près pour 1 fichier.
Par contre je ne sais pas intégré une boucle et un enregistrement sous le même nom que le bloc. Y a t'il un topic concernant ces éléments, cela pourrait être une alternative à ma recherche.
Pour la macro tu as bien copier celle de RIRIFIFI?
As tu bien créer le 2ème module class1?
Ci-joint la macro depuis une pièce sélectionnée un plan puis lancer la macro et cela fonctionne (à part que le block n'est pas fixé)
C'est à amélioré mais on s'approche.
Après vu ta demande si tu as seulement 100 block à modifié pas sûr que développer une macro qui n'existe pas soit plus rapide pour 1000 block ou plus en revanche je dis pas. 100 block =1 à 2h soit bien moins que le dev d'un macro même pour quelqu'un d'initié.
Merci pour ton retour. Oui je pense que j'ai bien utilisé la macro de ririfififi avec class1 et module1 séparé et des données (chemin de fichier...) conforme à mes dossiers.
Merci pour ta macro mais cela ne répond pas vraiment à mon besoin. Pour ma part avec ma macro j'arrive à faire une nouvelle pièce, insérer le bloc à l'échelle enregistrer et fermer. Pour 1 modèle défini.
Il me manque l'aspect "boucle" qui automatiserait l'ouverture du block suivant et reproduire les actions.
J'ai cherché mais je coince malheureusement... Je vais passé en mode "manuel" du coup
Réponse peut-être un peu tardive, mais la macro jointe devrait répondre à votre problème. Génération des pièces avec esquisse dans le plan de face, insertion à l'origine, à l'échelle 4. 3 lignes sont à modifier pour l'adapter à votre système: - ligne 35: répertoire source des documents de blocs (avec extension"SLDBLK"); - ligne 36: répertoire destination des fichiers de pièces, au même nom que les blocs, avec extension "SLDPRT"; - ligne 40: chemin et nom du modèle de pièce par défaut de votre version de SolidWorks.
Si c'est le cas, il faut vérifier que les variables Part et swModel ne sont pas vides: il suffit en mode debug de laisser le curseur au dessus de l'une de ces deux variables pour afficher son contenu. Si elles sont égales à Nothing, c'est que l'instruction précédente Part = swApp.NewDocument... (ligne 40) ne renvoie rien, et le document SolidWorks n'est pas ouvert. D'où l'erreur au moment de créer le gestionnaire d'esquisse. La chaine de caractères qui définit le fichier modèle est sans doute erronée, il faut vérifier, avec beaucoup de soin, qu'il existe bien, avec le chemin indiqué (sur mon fichier source il se trouve dans le dossier de SW 2018).