У меня странная проблема,
, когда я пытаюсь открыть и загрузить данные Excel в DataTable,
некоторые данные в листе Excel загружаются, но некоторые данные не загружаются,
в чем проблема,
Вы можете мне помочь.
Я добавил функцию GetExcelData,
Пожалуйста, посмотрите на этот код,
и, пожалуйста, скажите, в чем проблема.
GROUP CLASS TYPE C1 C2 C3 C4 C4 C5
M1 10 A D B D A A D
M1 10 B C D E E D D
M2 11 A D D D D D E
M2 11 B C D E D E A
Выше я разместил образец листа.
он копирует только данные в столбцах GROUP, CLASS и TYPE.
Но странно, что в некоторых файлах Excel эта ошибка не возникает,
и я не нашел ответа, решил спросить его здесь.
public DataTable GetExcelData(string fileName, string sheetName)
{
string sql = "";
OleDbConnection conn = new OleDbConnection();
OleDbCommand command;
OleDbDataAdapter adapter = new OleDbDataAdapter();
DataTable dt = new DataTable();
command = conn.CreateCommand();
string excel_file = fileName;
string excel_type = System.IO.Path.GetExtension(excel_file);
string connstr = "";
if(excel_type=="XLSX")
connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + fileName + ";Extended Properties=Excel 8.0";
else
connstr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" +fileName + ";Extended Properties='Excel 12.0;IMEX=1; HDR=YES'";
conn.ConnectionString = connstr;
sql = "SELECT * FROM [" + sheetName + "$]";
command.CommandText = sql;
adapter.SelectCommand = command;
adapter.Fill(dt);
return dt;
}