Страница: 1 |
Страница: 1 |
Вопрос: Пересчет пользовательских функций при нажатии F9
Добавлено: 27.08.08 19:03
Автор вопроса: андрей
Здравствуйте.
Бьюсь с одной распространненой проблемой - пересчет пользовательских функций (VBA UDF) по нажатию на F9 или Ctrl+F9. Как известно, UDF пересчитывается только при изменении какого-нибудь входного параметра. А как организовать пересчет UDF при каждом нажатии F9 или Ctrl+F9 (даже если параметры остались прежними)? Метод volatile абсолютно не подходит, т.к на листе содержится достаточно много данный (по этой же причине отпадает вариант Ctrl+Alt+F9). Я пытался что-то организовать с использованием Application event SheetCalculate, но безуспешно :(
Буду рад любым советам.
Спасибо
Ответы
Всего ответов: 4
Номер ответа: 1
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #1
Добавлено: 28.08.08 12:44
Я пробовала разные варианты, но тоже плохо получилось. Когда считает, когда нет. Да еще и ругается.
ActiveSheet.Calculate 'для листа
Selection.Calculate 'для ячейки
Номер ответа: 2
Автор ответа:
андрей
Вопросов: 6
Ответов: 9
Профиль | | #2
Добавлено: 28.08.08 13:01
Да, эти варианты не очень, сам тоже с ними эксперементировал.
Номер ответа: 3
Автор ответа:
андрей
Вопросов: 6
Ответов: 9
Профиль | | #3
Добавлено: 01.09.08 14:12
А можно организовать такую проверку с помощью API-функций!?
Номер ответа: 4
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #4
Добавлено: 02.09.08 09:53
Нет, поскольку в VBA, Office и Excel нет собственного документированного API. При помощи Win32 API эту задачу не решить.