Как остановить Excel от срабатывания Worksheet_Change перед Workbook_BeforeSave?

Update: Issue Resolved Мой коллега изменял ячейку во время Workbook_BeforeSave() без отключения событий, что вызывало Worksheet_Change(). Да, глупо, но по крайней мере это наша вина, а не Excel

Я заметил, что всякий раз, когда я нажимаю Ctrl+S в Excel, Worksheet_Change() срабатывает до Workbook_BeforeSave(). Можно ли подавить это поведение с помощью кода VBA, но без подавления всех событий (т.е. без Application.EnableEvents = false)?

Это происходит независимо от того, что я делаю. Я читал, что у кого-то была похожая проблема с ComboBox'ами, но я не редактирую ComboBox'ы, однако Worksheet_Change() срабатывает всегда перед сохранением.

Есть идеи? Я только пытаюсь понять, как обойти некоторый код внутри Worksheet_Change() при сохранении документа, потому что этот код должен выполняться только тогда, когда пользователь действительно что-то меняет, а не когда рабочая книга сохраняется. Сохранение ни в коем случае не означает изменение...

13
задан brettdj 11 January 2012 в 13:17
поделиться