Bonjour,

Je souhaite enregistrer des fichiers de plans ".SLDDRW" (SolidWorks) sous une autre extension et de façon automatisé (VBA)

Actuellement, j'ouvre mes plans 1 à 1 sur SolidWorks et je lance une macro qui enregistre sous le format voulu ".DXF"

Parallèlement à ça, j'ai un fichier excel dans lequel j'ai une colonne A avec le n° de plans et une colonne B avec le chemin. J'ai une macro sous excel qui ouvre les plans 1 à 1 automatiquement. => ça marche bien.

J'aimerai qu'en plus d'ouvrir les plans 1 à 1, elle exécute la macro sous SolidWorks pour enregistrer les plans au format ".DXF"


Es-ce possible?
La méthode n'est peut-être pas la bonne?
Avez-vous une meilleur idée?

La finalité étant d'enregistrer des fichiers ".SLDDRW" d'une liste excel au format ".DXF"

Voici mon code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
Private Sub CommandButtonOKdxf_Click()
 
 
 
 Dim cpt As Integer
 
 For cpt = 4 To 20
 
 
 NoLigneDRW = cpt
    Dim FichierSLDDRW As String
    Dim CheminFichierDRW As String
 
 
    CheminFichierDRW = Range("B" & NoLigneDRW).Value
    FichierSLDDRW = Range("A" & NoLigneDRW).Value
 
    If Range("D" & NoLigneDRW).Value <> "" Then
        ThisWorkbook.FollowHyperlink CheminFichierDRW & "\" & FichierSLDDRW & ".SLDDRW"       'Ouverture du plan .SLDDRW sous SolidWorks
    End If
 
  '++++++++ comment exécuter une macro dans solidWorks++++
 
 '------ci dessous la macro qui marche seule dans SolidWorks mais j'aimerai qu'elle s’exécute automatiquement a chaque ouverture de fichier
'Dim swApp As Object
 
'Dim Part As Object
'Dim boolstatus As Boolean
'Dim longstatus As Long, longwarnings As Long
 
'Sub main()
 
'Set swApp = Application.SldWorks
 
'Set Part = swApp.ActiveDoc
 
'PathName = UCase(Part.GetPathName)
 
'longstatus = Part.SaveAs3(Replace(PathName, "SLDDRW", "DXF"), 0, 0)
'longstatus = Part.SaveAs3(Replace(PathName, "SLDDRW", "SLDDRW"), 0, 0)
 
'End Sub
 
 
 
Next cpt
 
Unload UserFormTraiterDXF
 
End Sub