Ich habe diesen Code, der zu Hause funktioniert, siehe auf der Ebene Ihrer boolstatus-Zeile, im ersten Teil. Ich verstehe das "/"... Bearbeiten Sie nicht eine Komponente?
Bearbeiten: Sie müssen haben: "Configuration@nomfichier.extension"
Teil als Objekt dimmen Dim boolstatus als boolescher Wert Dim longstatus As Long, longwarnings As Long
In Ihrem Code ändern Sie einfach die Konfiguration Ihrer Assembly?
Für meinen Teil ist der Aufbau meines 3D wie folgt:
* Hauptbaugruppe (. SLDASM)
* Teilmenge (. SLDASM)
* Komponente (.part)
* Komponente (.part)
* Komponente(.part)
* verschiedene Komponenten (.part)
Ich möchte, dass der Code die Konfiguration einer Komponente (.part) in meiner Teilmenge (. SLDASM), während ich in meiner Hauptversammlung (. SLDASM).
Ich habe vielleicht eine Ahnung: Haben Sie versucht, die Baugruppe mit der Funktion der Traversenkomponente zu durchlaufen, wie im folgenden Makro gezeigt:
Der folgende Code wählt eine Komponente auf Ebene -2 aus und ändert ihre Konfiguration.
ABER es gibt einen Fehler..... Die Konfiguration, die angezeigt wird , ist nicht diejenige, um die ich sie bitte??!?
Sehen Sie, wie es zu Hause mit den richtigen Wegen aussieht und erzählen Sie es mir. (Es ist auch ein Chaos in den Deklarationen, ich habe mir nicht die Zeit genommen, aufzuräumen...)
Dim swApp als SldWorks.SldWorks Dim swAssy As SldWorks.assemblyDoc Sun swSelMgr As SldWorks.selectionMgr Dim swModel As SldWorks.ModelDoc Dim swComp als SldWorks.Component ConfigMgr als ConfigurationManager dimmen Dim-Instanz Als ISelectionMgr Dim-Index als Ganzzahl Dimmen Als Ganzzahl markieren Dim boolstatus als boolescher Wert Dimmen Sie modelDoc2 als SldWorks.modelDoc2 Dimmen assemblyDoc als SldWorks.assemblyDoc Dimmen featureMgr As SldWorks.FeatureManager Dim modelDocExt als SldWorks.ModelDocExtension Sun selectionMgr As SldWorks.selectionMgr Dimm-Funktion als SldWorks.feature Dim selObj Als Objekt Dim fim As SldWorks.feature Dim-OrdnerFeat As SldWorks.feature Fehler so lange dimmen Schwache Warnungen So lange Dimm-Status So lange Dim-Zählung So lange Dimmen des Werts als SldWorks.Component2 Dim componentsToMove() als Objekt Sonne i So lang Dim retVal als boolescher Wert Dim RefCfg als Zeichenfolge
Sub main()
Legen Sie swApp = Application.SldWorks fest Festlegen von swModel = swApp.ActiveDoc Set swAssy = swModel Legen Sie swSelMgr = swModel.SelectionManager fest Legen Sie ConfigMgr = swModel.ConfigurationManager fest Legen Sie modelDoc2 = swApp.ActiveDoc fest Legen Sie assemblyDoc = modelDoc2 fest
'Komponente auswählen Legen Sie modelDocExt = modelDoc2.Extension fest Festlegen von selectionMgr = ModellDoc2.SelectionManager status = modelDocExt.SelectByID2("testEUT15B0178'015 S-E STÜTZZYLINDER-1@Assemblage1/testO-RING STD-2@testEUT15B0178'015 S-E STÜTZZYLINDER", "KOMPONENTE", 0, 0, 0, Wahr, 0, Nichts, 0) Set selObj = selectionMgr.GetSelectedObject6(1, -1) Wert festlegen = selectionMgr.GetSelectedObjectsComponent4(1, -1)
' Zeige Config1 und mache sie zur aktiven Konfiguration Value.ReferencedConfiguration = "O-RING Ø24xØ1.5"
" Damit die Änderungen wirksam werden swModel.EditRebuild3