обновить значения рукописной VBA-формулы на листе?..

Автор MinasFilm, 22 октября 2014, 15:11

0 Пользователи и 1 гость просматривают эту тему.

MinasFilm

коим образом можно обновить значения формулы в ячейках листа (без перезакрытия файла), если формула - написана на VBA ручками как функция, и уже после собственно вставки ее на лист, код был изменен?

JohnSUN

Обычно Ctrl+Shift+F9 ("Безусловное новое вычисление") срабатывает хорошо.
Но есть один прикол, который сильно облегчает жизнь "рукописных функций" - в ячейку с их вызовом каким-то образом добавляется функция RAND() или NOW(). Фишка в том, что эти функции обязательно перевычисляются при каждом изменении данных на листе, а это приводит к пересчету всей ячейки. А значит и пользовательская функция тоже пересчитается.
Главная трудность заключается в том, чтобы добавить эти функции так, чтобы не исказить результат всей формулы.
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

MinasFilm

Цитата: JohnSUN от 22 октября 2014, 14:47Обычно Ctrl+Shift+F9 ("Безусловное новое вычисление") срабатывает хорошо.

и правда - отлично работает, спасибо!
(так понимаю, это для всех формул текущего листа - или же всей книги вообще?)