在 Office.js excel 中获取所选单元格的值和地址

get selected cell's value and address in Office.js excel

我正在使用 Office.js 开发 Excel Web Add-In。我需要获取 selected 单元格的 AddressValue。请注意,此处用户将 select 只有一个单元格。

当用户单击工作表中的单元格时应该发生这种情况。

下面的代码示例展示了如何获取用户选择的单元格区域,然后获取该区域中第一个单元格的值,然后显示所选区域的地址和该范围内的第一个单元格:

await Excel.run(async (context) => {
    var range = context.workbook.getSelectedRange();
    range.load(['address', 'values']);
    await context.sync();

    var firstSelectedCellValue = range.values[0][0];

    OfficeHelpers.UI.notify('Selected range is: ' + range.address + '. Value of first cell in that range is: ' + firstSelectedCellValue);
});

您可以使用 Script Labhttps://aka.ms/getscriptlab). Simply install the Script Lab add-in (free), then choose "Import" in the navigation menu, and use the following GIST URL: https://gist.github.com/kbrandl/39a15d790bf9653dda35b52966faed1e

自己快速轻松地尝试此代码段

我通过以下代码解决了我的问题

Office.context.document.addHandlerAsync(Office.EventType.DocumentSelectionChanged,
            function (eventArgs) {
                Excel.run(function (ctx) {
                    var range = ctx.workbook.getSelectedRange();
                    range.load(['address', 'values']);
                    return ctx.sync().then(function () {
                        showNotification("", range.values[0][0] + " Address:" + range.address);
                    });
                });                    
            });