Utilisation des macros SLDW

Bonjour,

 

Je suis sur SLDW 2014 en 64bits.

 

J'ai effectuer quelques recherche pour gagner du temps lors de l'enregistrement de nos fichiers.

Alors je m'explique.

 

Nos MEP solidworks, doivent être enregistrer sous 3 format differents à chaque fois. Un SLDDRW, un PDF, et un DWG (en version 2000 ou 2002).

Ces fichiers sont classer dans des fichiers respectifs.

A l'heure actuel, nous ouvrant, le MEP solidworks, puis nous enregistrant en PDF, puis nous faissons de même en DWG, tout en utilisant un fichier de convertion.

Donc, cela prend pas mal de temps.

 

Et j'ai vu, lors de mes recherches, qu'il existe multitude de macro pour cela.

 

Mais qui pourrait me diriger pour effectuer les manips correctement.

Et ou s'enregistre les fichiers PDF et DWG?

 

Merci d'avance.

sujet recurant sur lynkoa

http://www.lynkoa.com/search/enregistrer%20pdf%20dwg

il y a les outil tout fait

ainsi que des macro

@+;-)

 

4 « J'aime »

Bonjour,

 

Comme je l'ai indiqué ici :

http://www.lynkoa.com/forum/3d/comment-enregister-des-plusieurs-fichiers-slddrw-en-pdf-et-dxf

 

Si vous avez les outils MyCAD, il existe BatchConverter,

 

Sinon c'est possible par macro :

 

http://www.lynkoa.com/forum/cao/macro-d-enregistrement-en-pdf-et-dxf-dan...

http://www.lynkoa.com/forum/3d/macro-d-enregistrement-en-pdf

http://www.lynkoa.com/forum/3d/convertion-pdf-en-2014

http://www.lynkoa.com/forum/3d/macro-enregistrement-en-pdf-dans-un-dossi...

http://www.lynkoa.com/forum/3d/plan-sldrw-en-pdf-dans-dossier-different

 

Notamment le premier lien qui donne en meilleure réponse une macro fonctionnelle où simplement de petites modifications serotn nécessaires.

3 « J'aime »

Pour les débutants en VBA voir aussi mon tutoriel ou chaque ligne est commentée :

 

http://www.lynkoa.com/tutos/3d/macro-enregistrer-sous-avec-solidworks

 

BatchConverter est diponible ici à 70 € moins un centime :

 

http://www.lynkoa.com/store/fr/tools-et-macros/utilitaires/utilitaire-batchconverter.html

 

Et comme le dit @flegendre dans le 1er lien :

 

"Si tu as le complément EPDM, c'est encore mieux, tu paramètres une "tache de conversion" (pdf, dxf,iges,....) automatique sur ton Workflow, à la validation de la mise en plan."

4 « J'aime »

Pour répondre à la dernière question :

 

Avec une macro on peut choisir de définir un dossier commun, un dossier par type de fichier, un dossier en fonction d'une propriété personnalisée (client, numéro d'affaire) ou proposer un explorateur de fichier pour choisir à chaque fois où enregistrer les différents fichiers.

 

Dans BatchConverter, il faut enregistrer la manipulation une fois pour la rappeler à chaque besoin : 

On pourra choisir un dossier pour un type de fichier aussi.

1 « J'aime »

Merci pour ces réponses,

Mais, quand j'ouvre le tuto (http://www.lynkoa.com/tutos/3d/macro-enregistrer-sous-avec-solidworks), je suis déconnecter du site, et ne peu donc plus y acceder....pourquoi?

Ah, et question supplémentaire à ce sujet...

Sommes nous obliger d'ouvrir le fichier plan avec solidworks pour efectuer les enregistrement dans les autres format?

 

Je prend l'exemple, d'une personne qui aurait comme tâche d'effectuer ces manip, mais qui n'aurai pas la version de SLDW que moi, ou qui n'en aurai pas du tout.

Je crois que dans tous les cas SolidWorks est nécessaire sur le PC pour faire la conversion.

1 « J'aime »

a par ca pour convertir sans licence de base log SW

http://www.datakit.com/convertisseurs-cao/solidworks-3d-vers-pdf-3d/3-72-0.html

http://www.datakit.com/fr/cross_manager.php

voir aussi

http://helpx.adobe.com/fr/acrobat/kb/supported-file-formats-acrobat-reader.html

@+ ;-)

Comme le dit Lucas, il existe des exemples de code pour faire cela, sur ce forum ou d'autres trouvables depuis google

Tous ces exemples neccesite SW, 

 

Il est possible de passer par les API de eDrawing pour créer un PDF (en passant par un driver d'impression PDF) ou un fichier image, mais rien de plus.

 

 

7 « J'aime »

Je precise que la qualité de conversion n'est pas garanti via eDrawing

4 « J'aime »

Bon, j'ai fouiller dans tous ces liens, et j'ai trouver pour le moment , la macro qui permet l'enregistrement dans les 2 formats.

 

Maintenant je dois trouver le moyen de les sauvegarder dans un dossier spécifique.

 

Et pour finir, controler dans quelle version d'autocad ca les enregistre.

Alors,

la version d'enregistrement ne dépend pas de la macro, mais des paramètres régler dans autocad.

Donc ce point est résolu.

 

Lors de l'enregistrement du DWG et PDF, la macro, crée un sufixe au nom du plan. Qui est "espace -", et j'amierai le supprimer.

Je pense que cela vient de la  : FileName = Left(swDraw.GetTitle, Len(swDraw.GetTitle) - 9)

 

 

Et avant de mettre le chantier sur notre réseau.....

 

Nous rangeant nos fichier de la façon suivante :

 

fichier de premier niveau : VOITURE ou  MOTO ou TRACTEUR ou VELO

fichier second niveau :  Cabriolet ou Coupé ou monospace ou 4x4

fichier troisieme niveau : 3D / DWG / PDF

 

 

Donc, dans nos premiers niveau, nous avons une catégorie

second une taille ou un type spécifique

Troisieme, des dossiers tries des fichiers.

 

Et donc ce troisieme niveau, ce retrouve dans tout les dossiers. Mais comment dire à la macro, qu'il faut enregistrer le fichier dans un dossier DWG bien précis (sachant qu'il y en existe des dizaine)

 

 

en fait il vaut mieux utiliser 

 

Dim fso As New Scripting.FileSystemObject
Set fso = CreateObject("Scripting.FileSystemObject") ' ajouter la reference "microsoft Scripting Runtime

 

FileName = fso.GetBaseName(swDraw.GetPathName)

 

Car swDraw.GetTitle retorune le nom du ficheri + le nom de la deuille et on sourtrait 9 caracteres pour enlever le nom de la feuille ! c'est pas terrible

 

6 « J'aime »

Je viens de remplacer FileName = Left(swDraw.GetTitle, Len(swDraw.GetTitle) - 9)

par

FileName = fso.GetBaseName(swDraw.GetPathName)

 

Et lors de l'execution, erreur d'execution "424"

 

..pourquoi?

Erreur de ma part je crois.

 

car la macro, maintenant me nomme exatement les fichiers DWG et PDF comme l'origine.

 

Point sur la macro.

 

Sub main()

Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc

' Check to see if a drawing is loaded.

If (swModel Is Nothing) Or (swModel.GetType <> swDocDRAWING) Then

swApp.SendMsgToUser ("To be used for drawings only, Open a drawing first and then TRY!")

' If no model currently loaded, then exit
Exit Sub

End If
 
Set swDraw = swModel

Filepath = Left(swDraw.GetPathName, InStrRev(swDraw.GetPathName, "\"))
Set fso = CreateObject("Scripting.FileSystemObject") ' ajouter la reference "microsoft Scripting Runtime
FileName = fso.GetBaseName(swDraw.GetPathName)

swDraw.SaveAs (Filepath + FileName + ".PDF")
swDraw.SaveAs (Filepath + FileName + ".DWG")

End Sub

 

 

Un point négatif,

 

Je viens d'ouvrir la sauvegarde DWG, et j'ai le message suivant :

 

Le fichier DWG a été enregistré dans une appliation qui n'a pas été développée par Autodesk ou qui n'a pas de license Autodesk. Que voulez-vous faire?

 

 

Quand je poursuit l'ouverture, rien de spécial, mais nous ne pouvons nous permettre qu'un tel message apparaisse quand on l'ouvre. (Audit qualité oblige)

 

Comment faire?

Ca va vite être compliqué de répondre à des dizaines de question dans cette discussion !

 

Pourquoi ne pas ouvrir une nouvelle question par problème ?

 

Pour la macro, pour l'erreur DWG, etc ?

2 « J'aime »

Lors d'un enregistrer sous en DWG depuis SolidWorks, est-ce qu'il y a le même message ?

Si oui (et c'est probablement le cas), il faut modifier les options d'export en DWG :

 

Fichier > Enregistrer-sous > Choisir DWG, et la un bouton Options apparait

 

Avec quel logiciel est ouvert le DWG ?

2 « J'aime »