Добрый день.
Нужно автоматически определять и вычислять формулу по ключевому полю.
Для этого использую две таблицы.
Одна справочная (TabB). Она содержит два поля - ключ для ВПР и формулу расчёта для второй таблицы в виде текста.
Во второй (TabA) - значения, по которым проводится расчёт, ключ для ВПР и формула со ссылкой на имя вида "=@name",
в котором уже записана сама функция определения нужной формулы через ВПР
=ВЫЧИСЛИТЬ(ВПР(TabA[@Column];TabB;2;0))
Всё работает, но проблема в том, что вычисления не обновляются автоматически при изменении значений, по которым проводится расчёт в TabA.
Он пересчитывается только при обновлении в ячейке с ключом ВПР или самой ячейки с формулой вычисления.
Кнопки "Пересчёт" и "Произвести вычисления" на панели формул тоже не дают результатов.
Подскажите, пожалуйста, как исправить ситуацию? Нужно, чтоб или автоматом пересчитывалось, или командой в макросе.
Знаю, что можно вместо функции ВЫЧИСЛИТЬ и ВПР вынести всё в пользовательскую функцию VBA, но читал, что они медленнее работают, а формулы расчёта сложные и диапазон может быть в десятки тысяч строк и может тормозить.
Нужно автоматически определять и вычислять формулу по ключевому полю.
Для этого использую две таблицы.
Одна справочная (TabB). Она содержит два поля - ключ для ВПР и формулу расчёта для второй таблицы в виде текста.
Во второй (TabA) - значения, по которым проводится расчёт, ключ для ВПР и формула со ссылкой на имя вида "=@name",
в котором уже записана сама функция определения нужной формулы через ВПР
=ВЫЧИСЛИТЬ(ВПР(TabA[@Column];TabB;2;0))
Всё работает, но проблема в том, что вычисления не обновляются автоматически при изменении значений, по которым проводится расчёт в TabA.
Он пересчитывается только при обновлении в ячейке с ключом ВПР или самой ячейки с формулой вычисления.
Кнопки "Пересчёт" и "Произвести вычисления" на панели формул тоже не дают результатов.
Подскажите, пожалуйста, как исправить ситуацию? Нужно, чтоб или автоматом пересчитывалось, или командой в макросе.
Знаю, что можно вместо функции ВЫЧИСЛИТЬ и ВПР вынести всё в пользовательскую функцию VBA, но читал, что они медленнее работают, а формулы расчёта сложные и диапазон может быть в десятки тысяч строк и может тормозить.