Wyobrażam sobie, że nagrałeś makro, aby uzyskać ten wynik?
Zamiast tego należy użyć funkcji "Dla każdego ", która przejdzie przez wszystkie wymiary części, na przykład (która pobierze wartości wszystkich wymiarów dla wszystkich konfiguracji), zobacz tę sekcję pomocy API:
Nie użyłem a dla każdej funkcji, ale tworząc moją ocenę, nadałem jej nazwę, którą chciałem przekazać.
Poniżej znajduje się zmodyfikowany kod, który działa.
Przyciemnij myDisplayDim Jako obiekt Ustaw myDisplayDim = swmodel. AddDimension2(-0,15, wysokość / 2, 0) Przyciemnij myDimension jako obiekt Ustaw myDimension = swmodel. Parametr("H@Esquisse2") Ustaw swSelMgr = swmodel. Menedżer wyboru Ustaw swDispDim = swSelMgr.GetSelectedObject5(1) Dim swDim As SldWorks.Dimension Ustaw swDim = swDispDim.GetDimension Dim nom_cote As String