Hallo ihr alle
Auf einer SolidWorks Baugruppe können Sie mit dem VBA-Befehl "InsertBomTable3" und einigen Codezeilen die Stückliste einer Baugruppenkonfiguration in eine ausgewählte Ansicht einfügen. Aber wie kann man mit VBA-Befehlen die Nomenklatur mehrerer Konfigurationen anzeigen, wie es auf der SW-Oberfläche möglich ist?
In SolidWorks ist es beim Einfügen einer Stücklistentabelle möglich, das Tabellenmodell, den Stücklistentyp, die Art der Gruppierung, aber auch die Konfigurationen, die Sie anzeigen möchten (wie hier erläutert), auszuwählen. Somit hat die hinzugefügte Stückliste so viele "Mengen"-Spalten wie Konfigurationen vorhanden sind, und alle Teile der Baugruppe werden aufgelistet.
Ich habe mehrere Versuche unternommen, einschließlich der Aufzeichnung eines Makros, aber ich kann den Befehl oder die Befehlsfolge nicht finden, die es Ihnen ermöglichen, dasselbe in VBA wie direkt auf der Benutzeroberfläche anzuzeigen.
Haben Sie eine Lösung für diese Frage?
Thomas
Hallo @t.soulard, guten Abend Thomas
Wir freuen uns, Sie im Forum zu sehen und Sie willkommen zu heißen.
Ich hoffe, dass wir Ihnen regelmäßig bei der Lösung einiger Probleme helfen können, aber auch, dass wir von Ihrem Wissen und Ihrer Erfahrung profitieren können.
Wir haben in unserem Forum einen super starken VBA-Mann, der Ihnen schnell antworten wird!
Herzliche Grüße
1 „Gefällt mir“
Hallo @tous
Möglich für die top_level mit der Funktion "setconfigurations" von
Beispiel für "bomfeature"
2 „Gefällt mir“
Hallo
Vielen Dank für Ihre Antworten. Ich werde versuchen, heute etwas Zeit damit zu verbringen, sie zu studieren und in mein Programm zu implementieren, das direkt auf dem 3D und nicht auf der Zeichnung arbeitet.
Hallo sbadenis,
Vielen Dank für den IBomFeatures-Track, der genau richtig war.
Ich habe GetConfigurations verwendet, um alle Konfigurationen zu kennen, die auf den Namen gesetzt werden können, und dann SetConfigurations, um sie anzuzeigen.
Am Ende sieht mein Code wie folgt aus.
Set swBOMAnnotation = swModelDocExt.InsertBomTable3(Vorlagenname, 0, 0, BomType, Configuration, False, swNumberingType_Detailed, True)
Set swBOMFeature = swBOMAnnotation.BomFeature
ConfigS_Nom = swBOMFeature.GetConfigurations(Falsch, Sichtbar)
boolstatus = swBOMFeature.SetConfigurations(Wahr, Wahr, ConfigS_Nom)
Danke für Ihre Hilfe
Selbstbestätigtes S ist nicht schön
1 „Gefällt mir“