Вы можете воспользоваться тем фактом, что коллекция Worksheet.Cells
содержит только записи с ячейками, которые имеют «содержимое», т. Е. Значение, стиль и т. Д. Поэтому, если у вас есть лист, подобный этому:
И сделал что-то вроде этого:
using (var pck = new ExcelPackage(fileInfo))
{
var workbook = pck.Workbook;
var worksheet = workbook.Worksheets.First();
var valueCells = worksheet
.Cells
.Where(c => c.Value != null) //This will filter out the Yellow empty cells
.ToList();
valueCells.ForEach(c => Console.WriteLine($"{c.Start.Row},{c.Start.Column} = {c.Value}"));
}
выдаст вам это в выводе:
1,1 = Col1
1,2 = Col2
1,3 = Col3
2,1 = 0
2,3 = thcu5qox.0ni
3,2 = 10
4,1 = 2
4,2 = 20
5,1 = 3
5,2 = 30
5,3 = 4gnyrwlr.twk
6,1 = 4
6,2 = 40
7,2 = 50
7,3 = nswaeft2.y1h
8,1 = 6
9,2 = 70
10,2 = 80
10,3 = qmz4tkd3.qcw
11,1 = 9
11,2 = 90
11,3 = zjahlstc.azr