如果过滤器在 Office-JS API 中处于事件状态,我正在尝试找出一种仅从表中获取过滤值的方法。
现在我想出获取所有表数据的唯一方法是从表范围值属性:
var table = tables.getItemAt(0);
var tableRange = table.getRange();
tableRange.load("values");
ctx.sync().then(function () {
// This returns all the values from the table, and not only the visible data
var values = tableRange.values;
});
关于在过滤器处于事件状态时如何继续从表中仅获取可见值的任何想法?
根据以前使用 Office Interop 的经验,我通过遍历表格范围的不同区域实现了相同的效果,但我无法找到与 Office-JS 中的区域等效的内容。
最佳答案
作为 Excel JS API 1.3 一部分的下一波功能将包括一个新对象“RangeView”,它允许您仅读取 Range 对象的可见值。 这是 GitHub 上开放规范的链接 - https://github.com/OfficeDev/office-js-docs/tree/ExcelJs_1.3_OpenSpec/excel . 请注意,这目前还不可用,但会在不久的将来提供。
您在 table 上的情况下的用法如下所示:
var table = tables.getItemAt(0);
var visibleView = table.getRange().getVisibleView();
ctx.load(visibleView);
ctx.sync().then(function () {
var values = visibleView.values;
});
关于javascript - Office-JS API : Fetching filtered data from table,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38247566/