У меня есть таблица Excel с макросом, который записывает некоторые значения ячеек в текстовый файл. Когда любое из этих значений ячейки изменяется, макрос запускается и текстовый вывод обновляется.
Однако, если пользователь затем решает закрыть электронную таблицу без сохранения изменений, макрос не запускается, и текстовый вывод не обновляется до состояния до внесения изменений.
Тривиальный пример, чтобы прояснить проблему:
- скажем, ячейка B3 содержит строку "Пиво"
- Затем пользователь редактирует эту ячейку в "Wine"
- макрос обнаруживает изменение и обновляет текстовый файл до "Wine"
- если пользователь затем закрывает Excel без сохранения изменений, ячейка B3, очевидно, снова становится "Пиво" (хотя, поскольку Excel закрывается, это видно только при следующем открытии электронной таблицы)… но текстовый файл продолжает отображать «Wine msgstr ", потому что закрытие Excel без сохранения, по-видимому, не вызывает событие изменения, которое можно использовать для запуска макроса. Даже вызов макроса из событий Workbook_BeforeClose или Workbook_Deactivate не обновляет вывод текста из "Wine" обратно в "Beer"
Любые предложения, как я могу сделать откат вывода текста?