У меня сложный проект в Microsoft Office Excel 2007, в котором используется большое количество пользовательских функций. Через VBA в событии Workbook_Open я установил автоматический расчет Excel на OFF и стратегически размещенный метод Calculate , чтобы вручную вычислять ячейки всякий раз, когда мне это нужно, чтобы UDF не выполнял пересчет неумышленно.
Если рабочая книга является ТОЛЬКО открытой (или первая , чтобы открыть) в экземпляре Excel, все работает отлично. Только когда он откроет ПОСЛЕ другой книги (в том же экземпляре), мой проект унаследует настройку автоматического вычисления из книги FIRST и выполнит бесконечные вычисления для моих пользовательских функций. Код отключения, помещенный в событие Workbook_Open, не выполняется до тех пор, пока UDF не завершит вычисление (что может длиться вечно). Это происходит только в том случае, если мой проект НЕ тот, который был открыт первым.
Через http://www.decisionmodels.com/calcsecretse.htm, Я обнаружил, что Excel выполняет природу процесса вычисления ДО Событие Workbook_Open выполняется.
Таким образом, у меня, очевидно, вопрос к открытому проекту ПОСЛЕ открывается другая рабочая книга с включенным автоматическим расчетом:
- Как заставить мой проект отключить автоматический расчет
без выполнения сначала пересчета (помните, только проблема
происходит, когда проект открывается не первым, так как
следуйте настройкам из ранее открытой книги) ИЛИ ...
- Как заставить проект открываться в ДРУГОЙ ИНСТАНЦИИ (при двойном щелчке), чтобы избежать
наследование настройки автоматического расчета из предыдущей книги.
В любом случае, ответ, который я ищу, - открыть проект, не выполнив сначала вычисления.
Спасибо