Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Office365 如何从office.js中给定的Excel命名区域获取地址?_Office365_Office App - Fatal编程技术网

Office365 如何从office.js中给定的Excel命名区域获取地址?

Office365 如何从office.js中给定的Excel命名区域获取地址?,office365,office-app,Office365,Office App,我对使用Javascript API的Office外接程序非常陌生,目前我正在为Excel 2013编写代码。我想获取给定Excel命名区域的单元格地址。我有下面的代码,这将给我列和行计数,但没有一个选项来获得开始列数或行号。请帮忙 function GetRangeAddress() { Office.context.document.bindings.addFromNamedItemAsync("myRange", "matrix", { id: 'myMatrix' },

我对使用Javascript API的Office外接程序非常陌生,目前我正在为Excel 2013编写代码。我想获取给定Excel命名区域的单元格地址。我有下面的代码,这将给我列和行计数,但没有一个选项来获得开始列数或行号。请帮忙

function GetRangeAddress() {
        Office.context.document.bindings.addFromNamedItemAsync("myRange", "matrix", { id: 'myMatrix' }, function (result) {
            if (result.status == 'succeeded') {
                write('Columns: ' + result.value.columnCount + '  Rows: ' + result.value.rowCount );
            }
            else
                write('Error: ' + result.error.message);
        });

    }

Office.context.document.bindings.addFromNamedItemAsync的返回对象是绑定对象。方法没有属性,我们无法从绑定对象获取地址

然而,新版本的API支持Excel 2016,我们可以直接获得名称范围的地址。以下是一个样本供您参考:

function getAddress() {
    Excel.run(function (ctx) {
        var names = ctx.workbook.names;
        var namedItem = names.getItem('MyRange');
        var range = namedItem.getRange();
        range.load('address')

        return ctx.sync().then(function () {
            console.log(range.address);
        });
    }).catch(function (error) {
        console.log("Error: " + error);
        if (error instanceof OfficeExtension.Error) {
            console.log("Debug info: " + JSON.stringify(error.debugInfo));
        }
    });

}
您可以从以下链接获得有关新API的更多详细信息:

如果您对Office插件的反馈有任何想法,可以尝试从以下链接提交反馈: