Makro-Komposition für unterwegs

Hallo

Ich habe ein Makro, mit dem ich mehrere Befehle in Solidworks aus einer Excel-Datei ausführen kann.

Ich möchte dieses Makro entwickeln, indem ich eine "Composition to go" einer Assembly ausführe, die das Makro zuvor geöffnet hat.

Ich möchte jedoch einige Stücke aufgrund ihres Namens (die sich in einer Standardelementbibliothek befinden) aus der Takeaway-Komposition ausschließen, aber ich kann den entsprechenden Code nicht finden.

Hier ist der Link zu dem Code, der für die Takeaway-Komposition verwendet wird: http://help.solidworks.com/2012/English/api/sldworksapi/Pack_and_Go_an_Assembly_Example_vb.htm

Wissen Sie, wie Sie Teile aus einer Codezeile ausschließen können?

Vielen Dank

Hallo

Sehen Sie sich diese Antwort in VB.NET an:

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

Oder hier in VBA:

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

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

 

.PL

Vielen Dank für Ihre Antwort, die dem zu entsprechen scheint, was ich suche.

Beim Komponieren zum Mitnehmen möchte ich Stücke mit "Braut" im Namen ausschließen.

Allerdings möchte ich die Stücke in einem neuen Repertoire retten.

Also muss ich die beiden Codes mischen, aber ich kann es nicht.

Kannst du mir helfen?

Vielen Dank.

Ich habe es mit dem Code als Anhang versucht, aber alle Teile (auch die mit dem Namen "Braut") werden im neuen Ordner erstellt.


compo.txt

Ich möchte es wie in diesem Video machen, aber mit Hilfe des Makros:

https://youtu.be/vJgcFBKF49E

Glaubst du, dass es möglich ist?

Fügen Sie Ihren Code an Ihre Nachricht an, in der Sie erklären, was der Fehler ist oder an welcher Zeile das Makro abstürzt.

Der Code befindet sich in der Textdatei der vorherigen Nachricht.

Und wie in der Nachricht erwähnt, wird das Makro korrekt ausgeführt, aber kein Stück wird aus der Takeaway-Komposition ausgeschlossen.

Sorry, ich hatte es nicht gesehen.

Ich schaue mir das an.

Können Sie mir bitte sagen, in welchem Teil Ihres Codes Sie den Ausschluss vorgenommen haben?

In diesem Teil sollte der Ausschluss vorgenommen werden:

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

Mit am Ende

    Else
        
        MsgBox "Bitte speichern Sie das Dokument"
        
    Ende wenn

In welchem Link haben Sie gesehen, dass der Ausschluss auf diese Weise erfolgte?

Hallo

 

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

Aber ich glaube nicht, dass ich es auf die richtige Weise verwende, denn so wie ich es verstehe, sind die ausgeschlossenen Komponenten diejenigen, die in ihrem Namen einen Teil des Baugruppennamens enthalten. Ich möchte jedoch Komponenten ausschließen, die bestimmten Text enthalten.

In dem Link, den Sie einfügen, erfolgt der Ausschluss wie folgt:

 

const SEARCH_TEXT As String = "BRIDE"

Wenn InStr(1, name, SEARCH_TEXT, vbTextCompare) > 0, dann

newDocNames(i) = ""

Oder

newDocNames(i) = Name

Ende, wenn

 

Es ist also nicht dasselbe wie das, was du geschrieben hast!

1 „Gefällt mir“

So funktioniert es sogar besser!

Ich arbeite immer noch an dem Code, um eine zweite Zeichenfolge auszuschließen, bevor ich sie in den Solidworks API-Code integriere, um den Zielordner der Komposition auswählen zu können, der entfernt werden soll.

Vielen Dank für Ihre help.PL

1 „Gefällt mir“