【发布时间】:2020-11-22 06:29:00
【问题描述】:
我有一个使用 TExcelApplication、TExcelWorkbook 和 TExcelWorksheet 的 Delphi 10.4.1 应用程序。
Delphi 应用程序可以读取和写入 Excel 一切正常。
我想要的是,如果在 Excel 中更改、添加或删除工作表的名称,那么会向我的 Delphi 应用程序发送一条“消息”。我需要一个“触发器”,然后我的应用程序可以调用 ExcelApplication1.ActiveWorkbook.Sheets 并获取工作表名称列表。
我曾想过在我的应用程序调用ExcelApplication1.ActiveWorkbook.Sheets 中有一个工作线程循环并检查更改,但这似乎效率不高。尤其是考虑到工作表名称的更改并不是那么频繁。
是否有我可以拦截的 Windows 消息?
【问题讨论】:
-
也许file change notification 可以提供帮助(当然需要您保存文档)。
-
这种需求的原因是什么?根据实际原因,可能还有其他方法可以解决您遇到的问题。