如何在C#中搜索单元格(边框)颜色的excel范围?

时间:2014-11-04 16:57:04

标签: c# excel excel-2010 office-interop

我在C#中编写了一个方法,逐个单元格逐行循环遍历excel范围,并将其(边框)颜色与我要查找的颜色进行比较。这当然有效 - 但它很慢......

我是否有可能在我的范围内使用Find方法?我用谷歌搜索了这个,但我找不到任何与找到别的东西有关的东西而不是文字。

1 个答案:

答案 0 :(得分:0)

@Denise我怀疑你可以在interop上使用任何Find方法来检查单元格样式。如果您已经限制范围并逐个进行逐个单元格,我唯一的建议是使用EPPlus。当我们意识到速度增加了十倍以上时,我们进行了转换,对于至少有30,000行的纸张,加上你可以使用LINQ而且没有杂乱的互操作。

使用EPPlus只需要执行以下操作:

//looking for cells with a yellow border on its left side
IEnumerable<ExcelRangeBase> matches = worksheet.Cells.Where(c => c.Style.Border.Left.Color.Rgb == "FFFFFF00");