Bonjour à tous,
Je cherche à ouvrir la boîte de dialogue "Ouvrir" via une macro afin que l'utilisateur puisse choisir le fichier à ouvrir.
Quelqu'un connait la commande à utiliser ?
Merci
Bonjour à tous,
Je cherche à ouvrir la boîte de dialogue "Ouvrir" via une macro afin que l'utilisateur puisse choisir le fichier à ouvrir.
Quelqu'un connait la commande à utiliser ?
Merci
Bonjour, je te conseille une macro par apprentissage, voir ici :
http://help.solidworks.com/2013/French/SolidWorks/sldworks/c_recording_playing_macros.htm
Tu peux aussi regarder ma macro enregistrer sous :
.PL,
Merci pour ta réponse.
J'ai déjà essayé l'enregistreur de macro mais le code est vide si j'ouvre uniquement la boîte de dialogue et la referme. Et si j'ouvre un fichier, le code obtenu fonctionne mais il faut un lien vers un fichier et je souhaite que ce soit l'utilisateur qui sélectionne le fichier à ouvrir.
Il n'y a pas de lien vers ta macro enregistrer sous.
En effet, je viens de créer un tutoriel pour faire ceci :
http://www.lynkoa.com/tutos/import-export-formats-neutres/macro-solidworks-fen%C3%AAtre-ouvrir
Merci pour ce tuto !
Cependant j'avais trouvé ce code sur l'API Solidworks qui ouvre bien la boite de dialogue mais lorsque je sélectionne un fichier (pièce ou assemblage), rien ne se passe.
La même chose se produit avec le code que tu as fourni.
As-tu une idée pourquoi ?
Tu doubles cliques sur une pièce et rien en se passe ?
Oui c'est bien ça.
La boîte de dialogue se ferme et c'est tout, la pièce ne s'ouvre pas.
Le code fonctionne pour toi ?
Je peux pas tester maitnenant.
Tu es en quel version et SP de SolidWorks ?
Et quel est le but de la macro ? Il y a peut-être un moyen de contournement.
En fait la focntion GetOpenFileName renvoie le chemin du fichier sélectionné.
Pour l'ouvrir, il faut ajouter une ligne avec la commande OpenDoc6 avec fileName comme chemin.
Je mets le code ci-dessous (le chiffre après fileName dans la ligne "Set Part..." doit être 1 si on veut ouvrir une pièce et 2 pour un assemblage) :
Dim swApp As Object
Option Explicit
Public swModel As SldWorks.ModelDoc2
Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long
Sub Main()
Dim Filter As String
Dim fileName As String
Dim fileConfig As String
Dim fileDispName As String
Dim fileOptions As Long
Set swApp = Application.SldWorks
Filter = "SolidWorks Files (*.sldprt; *.sldasm; *.slddrw)|*.sldprt;*.sldasm;*.slddrw|Filter name (*.fil)|*.fil|All Files (*.*)|*.*|"
fileName = swApp.GetOpenFileName("File to Attach", "", Filter, fileOptions, fileConfig, fileDispName)
Set Part = swApp.OpenDoc6(fileName, 2, 0, "", longstatus, longwarnings)
Debug.Print fileName
End Sub
Bonne journée