Как получить доступ к объекту WorkbookCreated с помощью надстройки Excel JavaScript? - PullRequest
0 голосов
/ 31 марта 2020

Api-документы Excel JS ( Excel.WorkbookCreated ) говорят:

The WorkbookCreated object is the top level object created by Application.CreateWorkbook.
A WorkbookCreated object is a special Workbook object.

Это заставляет меня поверить, что объект WorkbookCreated используется для доступа к недавно книга создана, но нет объяснения или примеров доступа к объекту WorkbookCreated после создания новой книги.

Мне удалось успешно создать новую книгу со следующим кодом:

// dbg() is a function to output text to the html window within the excel plugin.

function makeWorkbook() {
    Excel.run(async context => {
        Excel.createWorkbook().then(() => {
            dbg('created');
        });
        return context.sync().then(() => {
            dbg('sync completed');
        });
    });
}

Я могу получить доступ к вновь созданной книге только после запуска этой функции, новая книга вручную выбирается пользователем, а затем запускается другая команда.

Существует ли способ доступа к вновь созданной книге в makeWorkbook ( ) функция выше без вмешательства пользователя?

1 Ответ

0 голосов
/ 01 апреля 2020

Боюсь, что наша система для генерации справочной документации по API помещает метод createWorkbook в конце очень длинной страницы. Эта ссылка приведет вас прямо к ней. Из примера видно, что вам нужно использовать объект JavaScript FileReader.

ОБНОВЛЕНИЕ: на есть официальная документация * Создать рабочую книгу . Ключевое предложение: «Когда вызывается этот метод, новая книга сразу открывается и отображается в новом экземпляре Excel. Ваша надстройка остается открытой и работает с предыдущей книгой».

Надстройка в основном находится в изолированном модуле JavaScript, который встроен в конкретный экземпляр Excel, в котором открыта надстройка. Надстройка не может связаться с другим экземпляром Excel, так же как она не может связаться с любым другим процессом на вашем компьютере по соображениям безопасности. Таким образом, нет доступа к вновь созданной книге из надстройки, которая создала ее с помощью Excel.createWorkbook.

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