Я пытаюсь разработать надстройку Excel JavaScript, которая обрабатывает все выбранные диапазоны.
При выборе большого диапазона с данными, например A1: O1000000, рабочий стол Excel зависает когда я вызываю метод ctx.syn c после получения объекта ctx.workbook.getSelectedRanges () .
Также проблема воспроизводится в настольных версиях Excel 2016 и Excel 2019. В Excel Online (Интернет) этот код работает нормально.
Моя версия Excel - 16.0.12430.20172, 64-разрядная
onTestClick(e)
{
console.log("onTestClick");
Excel.run(function (ctx) {
let selectedRanges = ctx.workbook.getSelectedRanges();
selectedRanges.load(["areas", "areaCount", "address", "addressLocal"]);
selectedRanges.areas.load({ $all: false, address: true, addressLocal: true});
return ctx.sync().then(function () {
for (let index = 0; index < selectedRanges.areaCount; index++) {
let area = selectedRanges.areas.items[index];
console.log("area[" + index + "] = " + area.address);
}
}).catch(function (error) {
console.log("onTestClick sync error: " + error);
}).then(()=>{
console.log("onTestClick end");
});
}).catch(function (error) {
console.log("onTestClick Excel.run error: " + error);
});
}