Używam Microsoft.ACE.OLEDB.12.0 do łączenia się z programem Microsoft Excel i pobierania z niego danych. Piszę moje kody w języku C# za pomocą programu Visual Studio 2012. tutaj jest mój kod:OLEDB Nie zwraca pierwszego wiersza pliku excel
public DataTable getData(string fileName, string sheetName)
{
connectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source='"
+ fileName
+ "';Extended Properties= 'Excel 8.0;HDR=Yes;IMEX=1'";
errorCode = ErrorDefinition.ERROR_NOERROR;
errorMessage = "";
DataTable dt = new DataTable();
try
{
string query = "SELECT * FROM [" + sheetName + "]";
OleDbConnection con = new OleDbConnection(connectionString);
OleDbDataAdapter dataAdapter = new OleDbDataAdapter(query, con);
dataAdapter.Fill(dt);
}
catch (Exception exp)
{
errorCode = ErrorDefinition.ERROR_OLEDBERROR;
errorMessage = exp.Message;
}
return dt;
}
Problemem jest to, że dt
nie zawiera pierwszy wiersz arkusza w określonym pliku. Co jest z tym nie tak? Każda pomoc jest doceniana w zaawansowanych.
+1. Więcej informacji na http://connectionstrings.com/excel –