Уважаемые коллеги,
Передо мной стоит задача поиска обратной функции для заданной функции двух переменных: Требуется найти зависимость концентрации от температуры и давления тогда как известна зависимость температуры от давления и концентрации...
Реальная функция значительно сложнее, чем представленная в примере. Более того реальная функция реализована как UDF в чужом запароленном модуле (надстройке) - к ней у меня есть только пользовательский доступ.
Для этой цели я определяю область значений функции для каждой из переменных и руками подбираю результат до тех пор пока вычисление известной функции не становится близким к текущему значению переменной.
Например: для давления = 3 функция концентрации определена в диапазоне температур от 24 до 36.
Тогда я ручным перебором нахожу такое значение концентрации (10,4%), при котором вычисленное по прямой формуле значение температуры (23,98) становится достаточно близким к текущему значению температуры (24).
Затем я перехожу к следующей температуре (26) при том же давлении (3) и повторяю операцию перебора до нахождения концентрации (29,3%)
Правильный результат подсвечивается зеленым цветом ячейки при помощи УФ.
К сожалению, мне не удалось спрятать все прямые вычисления внутрь УФ (видимо из-за особенностей реализации чужой UDF) - поэтому потребовалась дополнительная таблица ниже.
Подскажите, пожалуйста, как можно автоматизировать (очевидно при помощи VBA) процесс перебора значений (от 0% до 100%) для всех ячеек заданного диапазона, содержащих числовые значения(или пустых)? Критерием окончания перебора в текущей ячейке является смена цвета ячейки на зеленый или просто выполнение условия из УФ.
Как можно понять, в моем оригинальном файле содержится гораздо больше ячеек - мне бы очень хотелось избежать нудной ручной работы...
Заранее благодарен,
Илья
Передо мной стоит задача поиска обратной функции для заданной функции двух переменных: Требуется найти зависимость концентрации от температуры и давления тогда как известна зависимость температуры от давления и концентрации...
Реальная функция значительно сложнее, чем представленная в примере. Более того реальная функция реализована как UDF в чужом запароленном модуле (надстройке) - к ней у меня есть только пользовательский доступ.
Для этой цели я определяю область значений функции для каждой из переменных и руками подбираю результат до тех пор пока вычисление известной функции не становится близким к текущему значению переменной.
Например: для давления = 3 функция концентрации определена в диапазоне температур от 24 до 36.
Тогда я ручным перебором нахожу такое значение концентрации (10,4%), при котором вычисленное по прямой формуле значение температуры (23,98) становится достаточно близким к текущему значению температуры (24).
Затем я перехожу к следующей температуре (26) при том же давлении (3) и повторяю операцию перебора до нахождения концентрации (29,3%)
Правильный результат подсвечивается зеленым цветом ячейки при помощи УФ.
К сожалению, мне не удалось спрятать все прямые вычисления внутрь УФ (видимо из-за особенностей реализации чужой UDF) - поэтому потребовалась дополнительная таблица ниже.
Подскажите, пожалуйста, как можно автоматизировать (очевидно при помощи VBA) процесс перебора значений (от 0% до 100%) для всех ячеек заданного диапазона, содержащих числовые значения
Как можно понять, в моем оригинальном файле содержится гораздо больше ячеек - мне бы очень хотелось избежать нудной ручной работы...
Заранее благодарен,
Илья