Задать вопрос

Как извлечь данные из Excel (.xslx) файла в двухмерный массив (по столбцам)?

Здравствуйте.

Есть файл расширения .xslx (Excel). В этом файле, на "Листе 1", есть несколько столбцов заполненных данными:

a904e465c0664f338a8400a2f84c5a5c.png

Мне нужно эти данные из заранее заданного диапазона ячеек B1:C17 извлечь в двухмерный массив.

Как можно извлечь данные из этого (заданного) диапазона ячеек, не по одной ячейке, а к примеру, по столбцам?

Я хочу сразу считывать по столбцам по причине того, что данных у меня гораздо больше, чем приведено на фотографии.

P.S. Знаю, что близкие темы уже обсуждались в интернете, но я так и не нашел кода который подошел бы к моему случаю.
  • Вопрос задан
  • 17821 просмотр
Подписаться 1 Оценить Комментировать
Ответ пользователя HALIF_91 К ответам на вопрос (7)
HALIF_91
@HALIF_91
ExcelPackage (через nuget) для чтения файлов Excel 2007/2010/2013/2016 (формат Office Open XML, xlsx)
ExcelPackage.LicenseContext = LicenseContext.NonCommercial;
            FileInfo info = new FileInfo("input.xlsx");
            using (ExcelPackage xlPackage = new ExcelPackage(info))
            {
                // get the first worksheet in the workbook
                ExcelWorksheet worksheet = xlPackage.Workbook.Worksheets[0];
                
                // output the data in column 2
                for (int iCol = 2; iCol < 4; iCol++)
                {
                    for (int iRow = 1; true; iRow++)
                    {
                        if (string.IsNullOrWhiteSpace(worksheet.GetValue(iRow, iCol) as string))
                            break;
                        Console.WriteLine("Cell({0},{1}).Value={2}", iRow, iCol, 
                                worksheet.GetValue(iRow, iCol));
                    }
                }
            }
Ответ написан
Комментировать