Привет, друзья! Сегодня я хочу рассказать вам о своем опыте работы с данными из Excel в C#. Я столкнулся с задачей загрузки данных из Excel и последующим их обновлением в DataGridView.
Шаг 1⁚ Загрузка данных из Excel в DataGridView
Для начала работы с данными из Excel нам понадобится библиотека EPPlus. Я создал новый проект в Visual Studio и установил пакет NuGet для работы с этой библиотекой. Затем я импортировал пространство имен OfficeOpenXml.
using OfficeOpenXml;
Далее, я создал метод LoadDataFromExcel, который будет отвечать за загрузку данных из Excel в DataGridView. Этот метод принимает путь к файлу Excel в качестве аргумента.
private void LoadDataFromExcel(string filePath)
{
// Открываем файл Excel
using (var package new ExcelPackage(new FileInfo(filePath)))
{
// Выбираем первую страницу
var sheet package.Workbook.Worksheets[0];
// Получаем количество строк и столбцов
int rowCount sheet.Dimension.Rows;
int columnCount sheet.Dimension.Columns;
// Очищаем DataGridView
dataGridView.Rows.Clear;
dataGridView.Columns.Clear;
// Добавляем столбцы в DataGridView
for (int c 1; c < columnCount; c )
{
DataGridViewTextBoxColumn column new DataGridViewTextBoxColumn;
column.HeaderText sheet.Cells[1, c].Value.ToString;
dataGridView.Columns.Add(column);
}
// Добавляем строки и значения в DataGridView
for (int r 2; r < rowCount; r )
{
DataGridViewRow row new DataGridViewRow;
for (int c 1; c < columnCount; c )
{
row.Cells.Add(new DataGridViewTextBoxCell
{
Value sheet.Cells[r, c].Value.ToString
});
}
dataGridView.Rows.Add(row);
}
}
}
Теперь мы можем вызвать метод LoadDataFromExcel в том месте, где нам нужно загрузить данные из Excel в DataGridView. Просто передайте путь к файлу Excel в качестве аргумента.
Шаг 2⁚ Обновление данных и сохранение в Excel
Чтобы обновить данные в DataGridView и сохранить их в Excel, я создал метод SaveDataToExcel. Он также принимает путь к файлу Excel в качестве аргумента.
private void SaveDataToExcel(string filePath)
{
// Открываем файл Excel
using (var package new ExcelPackage(new FileInfo(filePath)))
{
// Выбираем первую страницу
var sheet package.Workbook.Worksheets[0];
// Обновляем значения в DataGridView
for (int r 0; r < dataGridView.Rows.Count; r )
{
for (int c 0; c < dataGridView.Columns.Count; c )
{
sheet.Cells[r 2, c 1].Value dataGridView.Rows[r].Cells[c].Value.ToString;
}
}
// Сохраняем изменения в файле Excel
package.Save;
}
}
Вы можете вызвать метод SaveDataToExcel, когда хотите сохранить обновленные данные в Excel.
Теперь у вас есть полезный инструмент для работы с данными из Excel в C#. Вы можете загружать данные из Excel в DataGridView, а также обновлять и сохранять изменения обратно в Excel. Надеюсь, этот опыт поможет вам в вашем проекте!
Удачи!