Office js API-调整Excel表大小

时间:2019-03-01 09:29:53

标签: javascript excel office-js

我有一个任务窗格加载项,该加载项允许将数据提取到工作表中的表中(我正在将值加载到表范围内的范围内)。但是,只要我得到的数据少于上一次提取的数据,表就不会收缩以适应新的数据集。

有什么方法可以使用Office js API调整表的大小?还是其他选择?

干杯!

--------编辑--------

简而言之,这是我正在使用的代码。作为documentation suggests,首先我将数据添加到一个范围,然后为该范围创建一个表:

//Step 1: load data
await Excel.run(async (ctx) => {
     const sheet = ctx.workbook.worksheets.getActiveWorksheet();
     sheet.getRange(dataRangeAdress).values = data;
     await ctx.sync
});

//create table
await Excel.run(async (ctx) => {
     const sheet = ctx.workbook.worksheets.getActiveWorksheet();
     const table = sheet.tables.add(dataRangeAdress, true);
     await ctx.sync
});

当我更新时,首先我删除以前的数据范围,如下所示:

 const dRange = sheet.getRange(dataRangeAdress);
 dRange.clear("Contents");

然后我重复步骤1以加载新数据。我之所以不使用table.getDataBodyRange()来更新表,是因为有时我需要处理大量数据(〜15000行),而随着documentations suggests的出现,我将拆分为较小的子集并加载按照每个步骤1所述。

当我获得的数据多于上一次获取的数据时,表将相应地增长,但是当数据量减少时则不会收缩。

enter image description here

0 个答案:

没有答案