我正在使用 EPPlus v 4.1 在 C# 中工作,并且没有运气将公式应用于不连续的单元格块。
我可以使用以下代码将公式应用于一系列选定的连续单元格。
Worksheet.Select(new ExcelAddress("T2:T10"));
Worksheet.SelectedRange.Formula = "=if(A2=\"\",\"empty\",\"not empty\")";
这很好用,因为它改变了公式,因此对于单元格 T2,检查的单元格是 A2,而对于单元格 T3,检查的单元格是 A3,等等。
但是,当我有一个不连续的单元格块时,公式的应用似乎失败了,并且只有所选范围内的第一个单元格接收公式。以下代码仅导致单元格 T2 接收公式。
Worksheet.Select(new ExcelAddress("T2,T5,T8,T10"));
Worksheet.SelectedRange.Formula = "=if(A2=\"\",\"empty\",\"not empty\")";
当我使用 Cells 属性时也是如此。
// awesome
Worksheet.Cells["T2:T10"].Formula = "=if(A2=\"\",\"empty\",\"not empty\")";
// not so awesome
Worksheet.Cells["T2,T5,T8,T10"].Formula = "=if(A2=\"\",\"empty\",\"not empty\")";
这听起来像是一个错误(已知或未知),还是我的错误更多?
上周我也在codeplex 网站上发布了这个,但这似乎正在消失。
谢谢!