是否可以为每个Excel工作簿工作表设置唯一GUID属性。因此,即使用户重命名工作表,我也能够通过工作表Unique GUID以编程方式检索正确的工作表。
我们正在创建一个插件,即使用户将其重命名为不同的值,也应该能够指向正确的Excel工作表。
在Excel工作表对象中找不到任何句柄或属性。
Microsoft.Office.Interop.Excel.Worksheet sheet1 in ActiveWorkbook.Worksheets
这是一个很长的镜头,但我直接在Excel中为工作表设置了(Name)字段(来自VBA编辑器)...
(Name)
...然后查看是否可以从C#实现中工作簿的互操作属性中的CodeName字段访问它。
如果您不熟悉如何访问该编辑器,请在Excel中按Alt + F11
显然,在进行了更改后,保存工作簿,然后再次从C#项目中重试。
该字段仅用于此目的,但它只是一个设计时间字段,您无法在运行时设置它。如果表单的名称发生更改或索引更改,则使用它,您仍然可以通过技术名称(CodeName)引用它。
我有兴趣看看它是如何发生的,如果它适合你。