这可能是枚举或迭代的最佳方式,或者只是在Excel中查找具有特定数据结构的空单元格或单元格,稍后一旦发现它就会对其进行一些处理。
我厌倦了Range,Value,Value2等,但是当Excel Sheet相当大时需要相当长的时间。我相信必须有其他一些有效的方法。 如果你能展示一些示例片段,那就太好了。
答案 0 :(得分:1)
答案很简单:从excel中获取一批数组(搜索SO以获取方法) - 测试空单元格的erray值,然后仅访问excel中的空单元格。
这有点麻烦,但是因为迭代每个单元格比简单地批量获取所有数据要慢得多。
答案 1 :(得分:1)
要查找空白单元格,请使用范围对象的.SpecialCells
方法。
.specialCells
方法返回匹配条件的范围对象(即xlCellTypeVisible
,xlCellTypeBlanks
等)。然后,您可以迭代此范围以执行格式化等。
更新我不是C#程序员,但我可以告诉你我将如何在VBA中执行此操作。假设interop暴露了大多数/所有相同的方法和功能,您应该希望能够为您的目的翻译它。
Sub ColorVisibles()
Dim rng As Range
Dim rngBlanks As Range
Dim blanksExist As Boolean
'define your range
Set rng = Range("A1:AA300")
'check to make sure there are blank cells in the range:
blanksExist = Application.WorksheetFunction.CountBlank(rng) > 0
If blanksExist Then
Set rngBlanks = rng.SpecialCells(xlCellTypeBlanks)
rngBlanks.Interior.Color = vbYellow
Else:
MsgBox "No blank cells exist in the specified range.", vbInformation
End If
End Sub