Witam ponownie wszystkich,
przepraszam, że publikuję bez testów, więc kontynuuję
Dim swApp jako SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Zarządzanie podrzędne()
assignmentPrincipalObjects
Zarządzanie wysokością dna
if test("D1@Esq1", "500") to
boolstatus = swModel.EditRebuild3()
Inaczej
MsgBox "Problem"
Zakończ jeżeli:
"Szerokość...
"Głębokość...
"Grubość...
Koniec subwoofera
Sub AssignmentPrincipalObjects() 'Może być umieszczony w innym module bez PB
Ustaw swApp = Application.SldWorks
Ustaw swModel = swApp.ActiveDoc
'Ustaw= .....
Koniec subwoofera
Function Test(NomVar As String, ValVar As String) As Boolean 'Może być umieszczony w innym module bez PB
Dim swEquationMgr As SldWorks.EquationMgr
Dim vSplit jako wariant
Ustaw swEquationMgr = swModel.GetEquationMgr
Test = Fałsz
Dla i = 0 Do swEquationMgr.GetCount - 1
vSplit = Split(swEquationMgr.równanie(i), "=")
vSplit(0) = Zamień(vSplit(0), Chr(34), Pusty)
vSplit(0) = Zamień(vSplit(0), Chr(32), Pusty)
Jeśli vSplit(0) = nazwa_zmiennej, to
swEquationMgr.równanie(i) = Zamień(swRównanieMgr.równanie(i), vSplit(1), ValVar)
Test = Prawda
Funkcja wyjścia
Zakończ jeżeli:
Dalej i
Zakończ funkcję
Właśnie przetestowałem i szybko przerobiłem ten kod, to od Ciebie JB zależy, czy "umieścisz go na swój własny sposób".
Używanie funkcji (tutaj Test) z przekazywanymi argumentami (tutaj NomVar i ValVar) pozwala na uporządkowanie swoich rzeczy w kilku modułach. Jeśli chodzi o podpunkt zatytułowany Zarządzanie, widzę go w module Twojego formularza użytkownika, aby go zobaczyć.
Pozdrawiam MC