VBA Excel voor SolidWorks

Hoi allemaal

Ik ben op zoek naar een VBA-code in Excel waarmee ik Solidworks kan starten, een SolidWorks-onderdeel of assemblagebestand kan openen en de eigenschappen van dit bestand kan wijzigen.

Geen kennis hebben van SW-macro's. Ik heb veel onderzoek gedaan op internet, maar ik kan geen bestand openen.

Bij voorbaat dank.

Fijne dag.

Hallo

Ik denk dat ik er een had gemaakt, maar ik kan er niet aan komen!

Kijk anders naar deze link:

https://forum.solidworks.com/thread/69618

Maar a priori opent Excel een SolidWorks-document (maar niet rechtstreeks SolidWorks):

  'Link naar Solidworks

    Stel swApp = Toepassing.SldWorks in

    Stel swModel = swApp.ActiveDoc in

  Als swModel niets is, dan

        MsgBox "Geen document geladen" & vbCrLf & _

                "Open eerst een Solidworks-tekening!", vbMsgBoxSetForeground + vbSystemModal

    Anders

'... Vervolg van de code

1 like

En vergeet natuurlijk niet de SolidWorks-referenties in Excel op te nemen, anders kun je helemaal niets!

Zie deze link:

http://www.cadsharp.com/blog/using-microsoft-excel-with-the-solidworks-api/

Meer specifiek dit deel:

Nadat de macro in Excel is gemaakt, gaat u naar "Tools > References" en controleert u:

 "SldWorks 20XX Type Bibliotheek"

 

1 like

Bedankt .PL voor deze snelle antwoorden.

De links zijn interessant

Ik begrijp mijn probleem niet. Als ik bijvoorbeeld de code uit het voorbeeld van de tweede link gebruik om een bericht weer te geven in SW compileert niet:

Dim swApp als SldWorks.SldWorks

Zie bijlage.

Bedankt.


capture.jpg
1 like

Dank je wel .PL.

Inderdaad, we moesten de "SldWorks 20XX Type Library" toevoegen.

Nu werken SW-codes.

Ik hou je op de hoogte van de rest.

Bedankt.

1 like

Wat betreft de wijzigingen in de eigenschappen, raad ik je aan om naar de macro te kijken die ik heb gepost als een tutorial over Lynkoa:

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

Deze macro, waarbij elke regel wordt becommentarieerd, wijzigt eigenschappen (inclusief de code-eigenschap).

Als u bijvoorbeeld een eigenschap wilt toewijzen, doet u het volgende:

CODE = SWmoddoc.CustomInfo("code")

Om een eigenschap toe te voegen:

retval = SWmoddoc.AddCustomInfo3("", "CODE", 30, NewCode)

1 like

Het lukt me om de kamer te openen en de eigenschappen te veranderen.

Met dank aan Lucas...

1 like