Ждите Excel, рассчитайте полный формул, запущенных OfficeJS - PullRequest
1 голос
/ 20 марта 2020

Я хочу выполнить некоторый код после того, как Excel завершил полный расчет, который я сам запустил. Поэтому в настоящее время я называю метод вычисления «полный» следующим образом.

context.workbook.application.calculate('Full');

Но, похоже, это просто запускает Excel для расчета и завершается задолго до фактического расчета. Попытка дождаться последующего звонка context.sync() не меняет результат.

Вместо обещания есть событие, указывающее на законченный расчет?

1 Ответ

0 голосов
/ 20 марта 2020

Да, мы добавили информацию об адресе в onCalculated, которая доступна для предварительного просмотра, это обновление события будет GA с установленным требованием 1.11

Excel.run(function (context) {
    var sheet = context.workbook.worksheets.getItem("Sample");
    sheet.onCalculated.add(function (event) {
        return Excel.run(function (context) {
            console.log("The worksheet has recalculated.");
            return context.sync();
        });
    });
    return context.sync();
});

Документ можно найти по адресу https://docs.microsoft.com/zh-cn/javascript/api/excel/excel.worksheet?view=excel-js-preview#oncalculated

Пример кода можно найти по адресу https://github.com/OfficeDev/office-js-snippets/blob/master/samples/excel/85-preview-apis/workbook-calculation.yaml

Примечание: это обновление API теперь доступно для инсайдеров в Excel Ma c и Excel Desktop, выходящий в Excel Online, будет готов в ближайшие 2 недели.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...