có pác nào bít hay có class nào vít sẵn cho phép read, create, edit lên file Excel không, tui đang làm cái này nhưng chưa xây dựng được thành một lớp hoàn chỉnh. ai bít pm cho tui với, thanks!
có pác nào bít hay có class nào vít sẵn cho phép read, create, edit lên file Excel không, tui đang làm cái này nhưng chưa xây dựng được thành một lớp hoàn chỉnh. ai bít pm cho tui với, thanks!
E nghĩ dùng ADO duyệt DB của file excel là đơn giản và dễ quản lý hơn các pác nhỉ ?
public DataTable getDataFromDXLS(string strFilePath)
{
try
{
string strConnectionString = string.Empty;
strConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + strFilePath + @";Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1""";
// strConnectionString = "Driver={Microsoft Excel Driver (*.xls)};DBQ=" + strFilePath + "";
OleDbConnection cnCSV = new OleDbConnection(strConnectionString);
cnCSV.Open();
OleDbCommand cmdSelect = new OleDbCommand(@"SELECT * FROM [Sheet1$]", cnCSV);
OleDbDataAdapter daCSV = new OleDbDataAdapter();
daCSV.SelectCommand = cmdSelect;
DataTable dtCSV = new DataTable();
daCSV.Fill(dtCSV);
daCSV.Dispose();
daCSV = null;
cnCSV.Close();
cnCSV.Dispose();
cnCSV = null;
return dtCSV;
}
catch (Exception ex)
{
throw (ex);
}
finally
{
}
}
cái này là lấy dữ liệu từ file excel đổ vào datatable
còn tìm kiếm trên datatable chắc không khó đối với bạn
mình chưa thử xem có đưa điều kiện vào câu
OleDbCommand cmdSelect = new OleDbCommand(@"SELECT * FROM [Sheet1$]", cnCSV); đc ko?
chúc bạn sớm hoàn thành bài tập
Nếu sheet name đã bị thay đổi rồi thì sao bạn, mình khuyến khích nên dùng interop excel. bạn vào msdn mà tìm hiểu về cái đó nhá, mình cũng đang tìm hiểu cái này để viết một lớp cho phép đọc, ghi, tạo mới và các phần khác như font size, font name... nhiều lắm. Nói chung là interop làm tốt hơn
Bookmarks