Cze wszystkim
Przychodzę do was z nadzieją, że znajdę pomoc.
Kontekst:
Chciałbym sterować złożeniami solidworks z programu Excel za pomocą makr. Zasadniczo program Excel otwiera złożenia jeden po drugim, usuwając lub rozwiązując znajdujące się w nich komponenty.
Mój problem polega na poleceniu usunięcia tych komponentów: Próbowałem otworzyć rodzinę części (za pomocą moich makr) i zmodyfikować ją, ale to nie działa i kończy się uszkodzeniem rodziny części. Ponadto powoduje wiele błędów, gdy rodzina części jest otwierana w tym samym czasie, co inny plik Excel.
Możliwe rozwiązanie:
Znalazłem więc funkcję EditSuppress2(), ale nie mogę jej dostosować do mojego kodu. Jeśli ktoś dobrze zna tę funkcję i może mnie poprowadzić, to dam Ci swój kawałek kodu.
Kod:
Prywatna subskrypcja CommandButton1_Click()
Dim swApp As Object
Przyciemnij model jako ModelDoc2
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long
Dim swModelDocExt As SldWorks.ModelDocExtension
Dim ret As Boolean
Ustaw swApp = CreateObject("SldWorks.application")
Ustaw model = swApp.ActiveDoc
Ustaw swModelDocExt = Model.Extension
boolstatus = swModelDocExt.SelectByID2("Pompa zębata<1>", "swSelCOMPONENT", 0, 0, 0, Prawda, 0, Nic, 0)
boolstatus = Model.EditSuppress2()
ret = swModelDocExt.Rebuild(swRebuildOptions_e.swRebuildAll)
Koniec subwoofera
Wydawało mi się, że widziałam tu cuda działające ;) Mam nadzieję, że znajdę pomoc.
Miłego dnia