Запуск макроса на основе изменения листа (ячейка содержит формулу)

Я думаю, что у меня достаточно разумный / стандартный запрос, и методы, которые я пробовал до сих пор, оказались безуспешными.

Я использую 32-разрядную версию Excel 2013 и в Листе 6 в ячейке J7 у меня есть сторонняя формула, которая меняется очень часто. По сути, я хотел бы вызывать макрос каждый раз, когда изменяется значение ячейки.

Помня, что эта ячейка является формулой (я пытался изменить эту формулу третьей стороны на простую формулу, такую ​​как A1+B1, и она не изменила поведение).

По сути, Excel не вызывает мой макрос и не распознает изменения в этой ячейке, если я не введу вручную формулу или не нажму клавишу F2 в ячейке Excel и не нажму клавишу "Ввод" или если я нажму на поле "Формула" и нажму клавишу "Ввод" (для выполнения всех шагов требуется щелчок пользователя),

Вот методы, которые я попробовал (все они являются вариациями Изменение листа или Расчет листа). Если я что-то упускаю из виду или метод, который я не пробовал, пожалуйста, сообщите, спасибо.

https://www.extendoffice.com/documents/excel/4423-excel-run-macro-on-cell-change.html

http://www.dbforums.com/showthread.php?1661517-Execute-Macros-From-Formulas-(Or-Cell-Value)

Как я могу запускать код VBA каждый раз, когда значение ячейки изменяется по формуле?

https://www.linkedin.com/pulse/20140623100408-92734594-how-to-execute-excel-vba-macro-on-change-of-specific-cell-in-excel-sheet

https://www.excelforum.com/excel-programming-vba-macros/400984-change-in-cell-from-formula-to-auto-run-a-macro.html

http://www.ozgrid.com/forum/showthread.php?t=144429

Запуск сценария VBA при изменении значения ячейки по формуле

Код VBA не запускается при изменении ячейки по формуле

Запускать макрос при изменении любой ячейки, содержащей формулу

автоматически выполнять макрос Excel при смене ячейки

1 ответ

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

Это событие AFTER_REFRESH, означающее, что когда REFRESH запускается через стороннюю ленту, он запускает мою VBA, как я и хотел.

Спасибо всем за ваши мысли / вклад.

Другие вопросы по тегам