写数组公式

时间:2016-07-01 17:22:08

标签: ms-office office-js

要将单个公式从一个区域复制到另一个区域,我们可以在加载rangeTarget.formulas = rangeSource.formulas后直接使用rangeSource.formulas。但是,此方法似乎不适用于数组公式。

例如,A1:A8包含数组公式{=B1:B8+10},以下代码尝试将此数组公式复制到C1:C8

function test () {
    Excel.run(function (ctx) {
        var r0 = ctx.workbook.worksheets.getItem("Sheet1").getRange("A1:A8");
        r0.load(["formulas"]);
        return ctx.sync().then(function () {
            var r1 = ctx.workbook.worksheets.getItem("Sheet1").getRange("C1:C8");
            r1.formulas = r0.formulas;
        });
    });
}

以下是结果(Excel Online和Excel for Windows):

enter image description here

那么有谁知道复制数组公式的正确方法是什么?

此外,我不知道如何在Excel Online中手动输入数组公式,快捷方式Ctrl+Alt+Enter似乎不起作用(在Mac键盘上)。

1 个答案:

答案 0 :(得分:0)

Office.js Excel API目前不支持数组公式。但是,请随时在https://officespdev.uservoice.com/

上建议/投票

~Michael Zlatkovsky,MSFT Office扩展团队开发人员