我正在使用TypeScript在Angular中创建一个Excel加载项。外接程序的目标是将外接程序中的值绑定到电子表格并保存引用,以便用户知道他将值绑定到哪个工作表/单元格。
但是,如果用户插入或删除列(或行),则加载项中记录的单元格引用需要更新为新值。
这是一个例子: 假设用户将一个值绑定到单元格A1。外接程序中将显示该值的参考(A1)。现在,用户在位置A添加一个新列。以前在单元格A1中显示的值现在将在单元格B1中。但是,加载项仍将显示单元格A1作为参考。
我曾考虑过使用事件Office.EventType.DocumentSelectionChanged来检测文档中的更改。问题在于处理程序未指定工作表的哪一部分已更改,而且我看不到自己检查每个单元格是否有所更改,因为这会极大影响我的加载项性能。
有什么建议吗?
答案 0 :(得分:1)
恕我直言,最好的方法是使用Excel的“已定义名称”(又名命名范围或命名项),而不是显式引用。这样一来,您就可以让Excel为您完成工作,而不是尝试使用事件在自己的代码中复制Excel已经完成的工作。
这是其他语言和API中推荐和最常用的技术