Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

передать функцию

6.1K
08 мая 2006 года
Kitty
16 / / 02.09.2004
Нужно в процедуру передавать функцию. Как это реализовать в vba?
То есть сигнатура процедуры должна быть proc(f, g) , где f(x) и g(x) - мои же функции, которые потом я вызываю в этой процедуре с нужными значениями параметров.
Нашла способ через evaluate, то есть передаю название ф-ции как строку: proc(ByVal F As String, ByVal G As String), , а потом выполняю с помощью Evaluate(F & "(" & CStr(CDbl(x)) & ")") но выглядит написанное коряво + Cstr подменяет точку в параметрах на запятую(видимо, из-за моих рег настроек) поэтому приходится еще делать Replace(CStr(x), ",", "."), что дополнительно нагромождает код.

Посоветуйте, как сделать такую элементарную вещь по-человечески?
405
10 мая 2006 года
Dmitrii
554 / / 16.12.2004
Цитата:
Originally posted by Kitty
Нужно в процедуру передавать функцию. Как это реализовать в vba?
То есть сигнатура процедуры должна быть proc(f, g) , где f(x) и g(x) - мои же функции, которые потом я вызываю в этой процедуре с нужными значениями параметров.
Нашла способ через evaluate, то есть передаю название ф-ции как строку: proc(ByVal F As String, ByVal G As String), , а потом выполняю с помощью Evaluate(F & "(" & CStr(CDbl(x)) & ")") но выглядит написанное коряво + Cstr подменяет точку в параметрах на запятую(видимо, из-за моих рег настроек) поэтому приходится еще делать Replace(CStr(x), ",", "."), что дополнительно нагромождает код.

Посоветуйте, как сделать такую элементарную вещь по-человечески?


Поясните, пожалуйста, смысл подобных манипуляций (на первый взгляд такой способ весьма экзотичен).

6.1K
13 мая 2006 года
Kitty
16 / / 02.09.2004
Цитата:
Originally posted by Dmitrii
Поясните, пожалуйста, смысл подобных манипуляций (на первый взгляд такой способ весьма экзотичен).


Если кратко , то: "как передать в процедуру указатель на ф-цию в качестве параметра".
Тк , как я понимаю,никак не передать, то описала каким образом я делаю это сейчас и интересуюсь, как подобные вещи делают "знающие люди".

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог