Macro-creatie die solidworks-bestand opent vanuit Excel

Hallo

Ik leg hieronder uit wat ik probeer te doen, ik hoop dat ik duidelijk zal zijn.... Ter info: ik weet niets over VB

Ik wil het aanmaken van mijn DXF's automatiseren

Uit het bijgevoegde Excel-bestand,

variabelen: als kolomwaarde X="Nieuw" en kolomwaarde Y="Gefabriceerd" of "Onderdeel/Op Set" dan opent u de 3d van de overeenkomstige onderdelen (pad = X6 celwaarde & L kolomwaarde & .sldprt) en slaat u ze op in ". DXF" naar het volgende adres "\\10.3.0.145\common\DAO\Iges-fao" onder de overeenkomstige naam in kolom M van de Excel-tabel

en lus dit op alle rijen waar variabelen X = "Nieuw" en kolomwaarde Y = "Gefabriceerd" of "Onderdeel/Op Set" worden gevonden

Bedankt voor je hulp

Als iemand het me zou kunnen aandoen, zou het me enorm helpen en indien mogelijk tegelijkertijd de lijnen van de macro nog beter uitleggen....

Ik hoop dat ik duidelijk ben geweest

Bedankt voor je hulp

 

 


template_bom_v2.xlsm

Hier is de code om een kamer of MEP van SW te openen:

Sub EssaiSW()

 Dim swApp As SldWorks.SldWorks
    Dim swModelUn As SldWorks.ModelDoc2
    Dim swModelDeux As SldWorks.ModelDoc2

    If swApp Is Nothing Then
        Set swApp = CreateObject("SLDWORKS.application")
        swApp.Visible = True
    Else
        Set swApp = Application.SldWorks
    End If

    Set swDocSpecification = swApp.GetOpenDocSpec("C:\Temp\Pièce5.sldprt")
    Set swModelUn = swApp.OpenDoc7(swDocSpecification)
    MsgBox swModelUn.GetTitle
    
    Set swDocSpecification = swApp.GetOpenDocSpec("C:\Temp\Pièce5.slddrw")
    Set swModelUn = swApp.OpenDoc7(swDocSpecification)
    MsgBox swModelUn.GetTitle
    
    swApp.CloseDoc swModelUn.GetTitle
    
    Set swModelUn = swApp.ActiveDoc
    MsgBox swModelUn.GetTitle
    
    Set swDocSpecification = swApp.GetOpenDocSpec("C:\Temp\Pièce6.sldprt")
    Set swModelDeux = swApp.OpenDoc7(swDocSpecification)
    
    swApp.CloseDoc swModelUn.GetTitle

    MsgBox swModelDeux.GetTitle
    
    swApp.CloseDoc swModelDeux.GetTitle
    
    
End Sub

U moet ook de volgende ref aan uw Excel-macro toevoegen:

Aan de andere kant, als je niets weet over vba, kun je beter je lijst met bestanden die je met Excel-formules moet verwerken in een extra tabblad zetten. We moeten het volledige pad herstellen.

(als kolomwaarde X="Nieuw" en kolomwaarde Y=" Gefabriceerd" of " Onderdeel/Op Set" open dan de 3d van de bijbehorende onderdelen (pad = celwaarde X6 & kolomwaarde L & .sldprt) en sla ze op in ". DXF" op het volgende adres "\\10.3.0.145\common\DAO\Iges-fao" onder de overeenkomstige naam in kolom M van de Excel-tabel...)

En vervolgens exporteert u deze lijst in csv en maakt u een regel in Integratie (gratis voor Mycadservice-klanten) om alle bestanden van uw csv-lijst in bulk te exporteren:

https://help.visiativ.com/mycadtools/2020/fr/Integration.html

Op deze manier is via Integratie veel eenvoudiger als je geen kennis hebt van VBA.

Het enige wat u hoeft te doen is een geautomatiseerde sortering uit te voeren via een Excel-formule en vervolgens te exporteren naar csv.

Importeer uw csv-lijst in Integratie, pas uw regel erop toe (exporteer uw deel in dwg of dxf)

Terwijl je voor de VBA nog te maken hebt met de loopback met de voorwaarden, de dxf export en implementeer dit alles in Excel, kan het zonder kennis erg ingewikkeld zijn.

1 like