Цитата(opi @ Apr 20 2012, 11:45)

Буду очень признателен если кто-нибудь скажет где взять SP6 для Cst11. Вероятно проблема в его отсутствии..
попробуйте здесь: filestube.com/2b54bf165697706303eb/go.html
Доброго времени суток уважаемые форумчане. Столкнулся с проблемой при описании структуры модели в CST MWS с помощью VBA. Надеюсь, что кто-то наведет на путь истинный...
Дело в том, что в некоторых случаях в макросе удобно использовать пользовательские функции (для повторения однотипных, но "параметрических" действий, допустим, расставление большого числа портов или пробников по определенному закону).
Например, совсем простенький вариант макроса:
************************************************
' test
Sub Main ()
Dim RB_n As Double
RB_n = testFunction(RB_n)
End Sub
Function testFunction(RB_n_1 As Double) As Double ' Пользовательская функция
Dim RB_n_2 As Double
RB_n_2 = 2*RB_n_1
testFunction = RB_n_2
End Function
************************************************
Сохраняю макрос. Захожу в редакторе. Переключаюсь в окно MWS. Вызываю макрос в меню "Macros->test". Все выполняется (моя НЕтестовая функция тоже прекрасно работает, ее вариант отрисовывает структуру модели и порты и т.д. )
Но вот если я изменяю значение переменной в списке переменных, или же в Hystory List нажимаю "update", выползает ошибка (
)
Как я понимаю (прошу прощения, новичок в VBA, больше как-то с C++ работаю), не видит он определения функции, при обновлении истории (это видно и ищ кода макроса непосредственно в HystoryList).
При этом из меню можно повторно хоть 100 раз этот макрос вызывать - все работает.
Кто что посоветует. Может, я что-то упустил. Или в CST использование пользовательских функций в таком контексте не предусмотрено? (CST, кстати, v.2010). Спасибо!