Solidworks Macro dialoogvenster "Openen"

Hoi allemaal

Ik wil het dialoogvenster "Openen" openen via een macro, zodat de gebruiker kan kiezen welk bestand hij wil openen.

Iedereen weet welk commando te gebruiken?

Bedankt

1 like

Hallo, ik raad je aan om een macro te gebruiken door te leren, zie hier:

 http://help.solidworks.com/2013/French/SolidWorks/sldworks/c_recording_playing_macros.htm

Je kunt mijn macro-opslag ook bekijken onder:

.PL

Dank u voor uw antwoord.

Ik heb de macrorecorder eerder geprobeerd, maar de code is leeg als ik gewoon het dialoogvenster open en sluit. En als ik een bestand open, werkt de verkregen code, maar er is een link naar een bestand nodig en ik wil dat het de gebruiker is die het bestand selecteert om te openen.

Er is geen link naar uw macro voor opslaan als.

1 like

Inderdaad, ik heb net een tutorial gemaakt om dit te doen:

http://www.lynkoa.com/tutos/import-export-formats-neutres/macro-solidworks-fen%C3%AAtre-ouvrir

 

1 like

Bedankt voor deze tutorial!

Ik had deze code echter gevonden op de Solidworks API die het dialoogvenster opent, maar wanneer ik een bestand (onderdeel of assemblage) selecteer, gebeurt er niets.

Hetzelfde gebeurt met de code die je hebt opgegeven.

Heb je enig idee waarom?

1 like

Dubbelklik je op een onderdeel en gebeurt er niets?

Ja, dat klopt.

Het dialoogvenster wordt gesloten en dat is alles, de kamer wordt niet geopend.

Werkt de code voor jou?

Ik kan nu niet testen.

In welke versie en SP van SolidWorks zit je?

En wat is het doel van macro? Er kan een manier zijn om het te omzeilen.

In feite retourneert de functie GetOpenFileName het pad van het geselecteerde bestand.

Om het te openen, moet u een regel toevoegen met de OpenDoc6-opdracht met fileName als pad.

Ik zet de code hieronder (het nummer na fileName in de regel "Set Part... " moet 1 zijn als u een onderdeel wilt openen en 2 voor een montage):

 

Dim swApp als object
Optie Expliciete

 
Openbaar swModel                  As SldWorks.ModelDoc2

Deel dimmen als object
Dim boolstatus als Booleaanse
Dim longstatus As Long, longwarnings As Long


Sub Hoofd()

 

Dim Filter                      Als String

Dim fileName                    als tekenreeks

Dim fileConfig                  als tekenreeks

Dim fileDispName                als tekenreeks

Dim bestandopties                 zo lang

 

Stel swApp = Toepassing.SldWorks in

Filter = "SolidWorks-bestanden (*.sldprt; *.sldasm; *.slddrw)|*.sldprt;*.sldasm;*.slddrw|Naam van het filter (*.fil)|*.fil|Alle bestanden (*.*)|*.*|"

fileName = swApp.GetOpenFileName("Bestand om bij te voegen", "", Filter, fileOptions, fileConfig, fileDispName)

Deel instellen = swApp.OpenDoc6(bestandsnaam, 2, 0, "", longstatus, longwarnings)

Fouten opsporen.Bestandsnaam afdrukken

 
Einde Sub

 

Fijne dag

1 like