Обновление: проблема решенаМой коллега менял ячейку во время Workbook_BeforeSave()
без отключения событий, поэтому запуск Worksheet_Change()
. Да, глупо, но, по крайней мере, это наша вина, а не в ExcelКак остановить Excel от стрельбы Worksheet_Изменить перед Workbook_BeforeSave?
Я заметил, что всякий раз, когда я ударил Ctrl + S в Excel, то Worksheet_Change()
вызывается перед Workbook_BeforeSave()
. Можно ли подавить это поведение с помощью кода VBA, но не подавлять все события (т. Е. Без Application.EnableEvents = false
)?
Это происходит независимо от того, что я делаю. Я читал о ком-то с аналогичной проблемой с ComboBoxes, но я не редактирую ComboBoxes, но Worksheet_Change()
срабатывает всегда перед сохранением.
Любые идеи? Я только пытаюсь понять, как обходить какой-то код внутри Worksheet_Change()
, когда документ сохраняется, потому что этот код должен выполняться только тогда, когда пользователь на самом деле что-то меняет, а не при сохранении книги. Сохранение ни в коем случае не меняется ...
Является ли это на все файлы или только одну книгу? Если в одной книге dO есть какие-либо изменчивые функции, которые могут быть запущены при сохранении в этой книге? – brettdj
Возникает только активная рабочая книга. И нет, у меня нет летучих функций в книге. – CamilB
Просто попробовал с чистой книгой, и эта проблема не появляется. Я не знаю, что я делаю неправильно в первой книге, но я над этим работаю. Я буду писать все, что найду. – CamilB