我试图获取最后一个选定单元格的详细信息 - 值,地址等 到目前为止,我无法做到这一点 - 我最接近的是获得当前选定的单元格,这显然不能满足我的需求。
谢谢!
答案 0 :(得分:0)
如果您尝试获取对先前所选单元格的引用,则以下操作。创建一个名为lastRangeAddress的全局变量。然后为 Workbook.onSelectionChanged 事件分配处理程序。 跟随是一个处理程序,它将当前单元格变为黄色并将最后一个(即先前选定的)单元格选为蓝色。查看此工作的最简单方法是在Excel中安装Script Lab。在Excel中打开它并打开选择已更改代码段。在顶部附近的按钮处理程序赋值语句下面添加全局变量:let lastRangeAddress: string;
。然后将 onSelectionChange 方法替换为下面的方法。在脚本实验室中打开运行窗格,按添加事件处理程序按钮,然后开始单击单元格。
要读取lastRange的属性,您需要加载它们并进行同步。
async function onSelectionChanged() {
tryCatch(() => Excel.run(async (context) => {
if (lastRangeAddress) {
const lastRange = context.workbook.worksheets.getActiveWorksheet().getRange(lastRangeAddress);
lastRange.format.fill.color = "blue";
}
const range = context.workbook.getSelectedRange();
range.format.fill.color = "yellow";
range.load("address");
await context.sync();
lastRangeAddress = range.address;
}));
}