Macrocompositie voor onderweg

Hallo

Ik heb een macro waarmee ik meerdere opdrachten op Solidworks kan uitvoeren vanuit een Excel-bestand.

Ik wil deze macro ontwikkelen door een "Compositie te gaan" te doen van een assemblage die de macro eerder opent.

Ik zou echter enkele stukken willen uitsluiten van de afhaalsamenstelling op basis van hun naam (die zich in een standaard elementenbibliotheek bevinden), maar ik kan de bijbehorende code niet vinden.

Hier is de link naar de code die is gebruikt voor de samenstelling van de afhaalmaaltijd: http://help.solidworks.com/2012/English/api/sldworksapi/Pack_and_Go_an_Assembly_Example_vb.htm

Weet jij hoe je onderdelen kunt uitsluiten van een regel code?

Bedankt

Hallo

Zie dit antwoord in VB.NET:

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

Of hier in VBA:

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

https://cloud.centralinnovation.com.au/sharpcode/index?article=Exclude-files-from-Pack-n-Go

 

.PL

Dank u voor uw antwoord, dat lijkt overeen te komen met wat ik zoek.

Bij het componeren om te gaan, wil ik stukken met "Bride" in de naam uitsluiten.

Ik wil de stukken echter bewaren in een nieuw repertoire.

Dus ik moet de twee codes mengen, maar ik kan het niet.

Kun je me helpen?

Bedankt.

Ik heb geprobeerd met de code als bijlage, maar alle onderdelen (zelfs die met de naam "Bride") zijn aangemaakt in de nieuwe map.


compo.txt

Ik zou graag willen doen zoals in deze video, maar met behulp van de macro:

https://youtu.be/vJgcFBKF49E

Denk je dat het mogelijk is?

Voeg uw code toe aan uw bericht waarin u uitlegt wat de fout is of op welke regel de macro vastloopt.

De code staat in het tekstbestand van het vorige bericht.

En zoals gezegd in het bericht, de macro loopt correct, maar geen enkel stuk is uitgesloten van de afhaalsamenstelling.

Sorry, ik had het niet gezien.

Daar ben ik naar aan het kijken.

Kunt u mij vertellen in welk deel van uw code u de uitsluiting heeft gedaan ?

Het is in dit deel dat de uitsluiting moet worden gemaakt:

Dim swModel As SldWorks.ModelDoc2
Dim swPackAndGo As SldWorks.PackAndGo
Set swApp = Application.SldWorks
    
    Set swModel = swApp.ActiveDoc
    
    If swModel.GetPathName() <> "*Bride*" Dan

Met aan het einde

    Else
        
        MsgBox "Sla het document op"
        
    Einde Als

In welke link zag je dat uitsluiting op die manier werd gedaan?

Hallo

 

In deze link: https://cloud.centralinnovation.com.au/sharpcode/index?article=Exclude-files-from-Pack-n-Go

Maar ik denk niet dat ik het op de juiste manier gebruik, omdat, zoals ik het begrijp, de uitgesloten componenten degenen zijn die in hun naam een deel van de assemblagenaam bevatten. Ik zou echter componenten willen uitsluiten die specifieke tekst bevatten.

In de link die je plaatst, gaat de uitsluiting als volgt:

 

Const SEARCH_TEXT As String = "BRUID"

Als InStr(1, naam, SEARCH_TEXT, vbTextCompare) > 0 Dan

newDocNames(i) = ""

Anders

newDocNames(i) = naam

Einde als

 

Het is dus niet hetzelfde als wat je schreef!

1 like

Sterker nog, zo werkt het beter!

Ik werk nog steeds aan de code om een tweede string uit te sluiten voordat ik deze integreer in de Solidworks API-code om de bestemmingsmap van de compositie te kunnen kiezen om mee te nemen.

Bedankt voor je help.PL

1 like