Xavv
1
bonjour
Pour ouvrir un fichier dans SolidWorks depuis une macro , j'utilise
Dim swApp As SldWorks.SldWorks
Set swApp = GetObject(, "SldWorks.Application") ' pour récupérer le SW déjà ouvert
ou encore
Set swApp = CreateObject("SldWorks.Application") ' pour démarrer SW
Je voudrai faire la même chose avec eDrawing
Problème , je n'ai pas trouvé de GetObject pour eDrawing
j'ai bien vu que dans mon projet VBA , je peux ajouter comme "References"
Library EModelView
C:\Program Files\SOLIDWORKS Corp\eDrawings\EModelView.dll
EModelView 2020 Type Library
j'ai essayé sans succès
Set EModelViewApp = CreateObject("EModelView.Application")
mais cela ne fonctionne pas :-(
( j'ai installé SW 2020 / eDrawing 2020 )
Bonjour,
Si c'est juste pour ouvrir un fichier dans eDrawings :
Dim RetVal As Boolean
Dim App As String
Dim Fichier As String
Sub main()
App = "C:\Program Files\SOLIDWORKS Corp\eDrawings\eDrawings.exe"
Fichier = "C:\Users\xxx\Desktop\monFichier.dxf"
RetVal = Shell(App & " " & Fichier, 1)
End Sub
Sans oublier de mettre "Microsoft Shell Controls And Automation" en référence.
Cordialement,
Xavv
3
bonjour,
c'est comme cela que je fais actuellement,
mais le problème , c est de redémarrer une application eDrawing pour chaque fichier .....
je voulais trouver mieux en utilisant GetObject CreateObject .....
Regarde cet exemple pour sauvegarder un Sldprt en pdf à l'aide de l'API eDrawing:
https://www.codestack.net/edrawings-api/output/print-to-pdf/
La structure est différente de l'API Solidworks mais ca fonctionne bien. Je l'utilise pour convertir les Sldprt en edrawing.