none
Чтение отфильтрованных пользователем строк из Excel RRS feed

  • Вопрос

  • Приветствую!

    Собственно, пользователь добавляет фильтр на столбец, закрывает файл, и загружает в ПО, необходимо прочитать только уже отфильтрованные значения. Я так понимаю, если использовать обработчик Microsoft.Office.Interop.Excel, то собака зарыта примерно в следующей строчке кода:

    var xlRange = xlWorkSheet.UsedRange;

    Собственно, как реализовать задуманное?

    24 августа 2018 г. 5:54

Ответы

  • Собственно, есть решение на stackoverflow.com. Суть сводится к тому, что приходится иметь дело не с одним диапазоном, а несколькими, в коде каждый диапазон есть area.

    var xlRange = xlWorkSheet.UsedRange.SpecialCells(excel.XlCellType.xlCellTypeVisible, Type.Missing);
    
                foreach (excel.Range area in xlRange.Areas)
                {
                    foreach (excel.Range row in area.Rows)
                    {
                        //(row.Cells[1, 1].Value2.ToString());
                    }
                }

    24 августа 2018 г. 6:57