Иван

18.04.2025

Чтение данных из Excel файла в программе на C#

Интересует метод чтения данных из файла Excel с сохранением значений ячеек файла в словарь программы, если можно на примерах.

Операционная система: Windows
Статус: вопрос решён

Вячеслав

клиент

18.04.2025

Иван, попробуйте так:
public static DataTable ReadExcelFile(string filePath)
{
// Проверка существования файла
if (!File.Exists(filePath))
throw new FileNotFoundException("Файл не найден");

// Открываем файл Excel
using var workbook = new XLWorkbook(filePath);
IXLWorksheet worksheet = workbook.Worksheet(1); // Читаем первый лист

// Создаем таблицу для хранения данных
var dataTable = new DataTable();

// Добавляем столбцы таблицы
foreach (var firstRowCell in worksheet.Row(1).Cells())
{
dataTable.Columns.Add(firstRowCell.Value.ToString());
}

// Заполняем строки таблицей
for (int i = 2; i <= worksheet.RowsUsed().Count(); i++)
{
var row = worksheet.Row(i);
var values = new object[row.CellsUsed().Count()];

int columnIndex = 0;
foreach (var cell in row.Cells())
{
values[columnIndex++] = cell.Value?.ToString() ?? string.Empty;
}

dataTable.Rows.Add(values);
}

return dataTable;
}
Далее можете адаптировать под конкретную задачу

Чтобы комментировать, необходимо авторизоваться или зарегистрироваться.

Все советы и рекомендации, размещённые на форуме, носят исключительно информационный характер и не являются официальной инструкцией.
Перед применением любых советов убедитесь в их актуальности и безопасности для вашей конкретной ситуации.