Makro nie działa (nagrywanie i działanie)

Witam wszystkich,

Tworzę zapis makr, który dołączam do Ciebie

' ******************************************************************************
Dim swApp As Object

Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long

Sub main()

Set swApp = _
Application.SldWorks

Set Part = swApp.ActiveDoc
boolstatus = Part.Extension.SelectByID2("XXXXX_630S_dechargement_de_650_tendeur_standard-1@xxxxx/63_ensemble_tendeur_palier_(01)-3@XXXXX_630S_dechargement_de_650_tendeur_standard", "COMPONENT", 0, 0, 0, False, 0, Nothing, 0)
boolstatus = Part.CompConfigProperties4(2, 0, True, True, "Sans moteur", False, False)
Part.ClearSelection2 True
boolstatus = Part.EditRebuild3()
End Sub

 

Problem polega na tym, że po  ponownym uruchomieniu tego makra nie działa, pojawia się błąd

"Błąd wykonania '450'"

Nieprawidłowa liczba argumentów lub nieprawidłowe przypisanie właściwości

Czy to normalne?

z góry dziękuję za pomoc

 

1 polubienie

Witam

W większości przypadków nawet proste nagrywanie makr nie wystarczy.

Najwyraźniej chcesz zmienić konfigurację jednego z komponentów. Ale musimy powiedzieć nam trochę więcej o upragnionym celu.

1 polubienie

Witam

Tak, to normalne, masz o jeden argument za dużo w funkcji "CompConfigProperties4", rzuć ostatni False.

Pozdrowienia

1 polubienie

Dziękuję za odpowiedzi 

Usuwając ostatni "False" działa

Moim celem jest tylko zmiana konfiguracji w zestawie.

To, czego nie mogę zrozumieć, to dlaczego po prostu tworzę makro w Solidworks, a Solidworks daje mi fałszywe makro?

 

Tak, to dziwne, kiedy to robię, rejestrator makr Solidworks wychodzi prawie takie samo makro jak ty, ale po wpisaniu "CompConfigProperties5", a nie "CompConfigProperties4", a potem działa, ponieważ "CompConfigProperties5" ma jeszcze jeden argument.

Pozdrowienia

1 polubienie

I normalnie, od wersji oprogramowania 2019, czystsze byłoby wzięcie funkcji "CompConfigProperties6", która ma jeszcze jeden argument...

FYI, funkcja "CompConfigProperties5" pojawiła się od wersji 2017, byłoby interesujące poznać ewolucje, które śledziłeś w kolejnych instalacjach Solidworks i czy za każdym razem ponownie instalujesz opcję VSTA...

Jestem w wersji z 2015 roku, to wyjaśnia  to może :-)

Tak, to normalne, że oferuje funkcję "CompConfigProperties4", ale dziwne jest, że nagle umieszcza w niej o jeden argument za dużo!!

Oznacza to, że jest to punkt, w którym należy sprawdzić, czy makra wychodzą z rejestratora, ale jak powiedział remrem: "W większości przypadków, nawet proste, nagrywanie makr nie wystarczy.", to jest tylko pomoc w uruchamianiu makr.

Pozdrowienia

1 polubienie