我有代码从excel表中选择值。目前,Excel工作表包含258列。我正在使用OLDDBDatrareader从该excel中选择值。但是,select查询仅选择前255列。每个版本中excel表中的列数将增加。那么如何从Excel工作表中选择超过255列。我已经使用了以下代码,
string Connection = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + fileName + ";Extended Properties=\"Excel 12.0;HDR=YES;IMEX=1;MAXSCANROWS=15;READONLY=FALSE\"";
OleDbConnection con = new OleDbConnection(Connection);
OleDbCommand command = new OleDbCommand();
DataSet ds = new DataSet();
command.CommandText = sql;
command.CommandType = CommandType.Text;
command.Connection = con;
command.Connection.Open();
OleDbDataReader dr = command.ExecuteReader(CommandBehavior.CloseConnection);
选择查询是,
sql.Append("SELECT * FROM [Sheet$]");
我尝试分解范围并使用类似sql.Append(“SELECT * FROM [Message $ A:IU]”)和sql.Append(“SELECT * FROM [Message $ IV:ConfigurationManager.AppSettings。获取( “EndRegion”)“);并将结果合并到单个数据表中。它按预期工作正常。但是此工作表中的列数是针对每个版本动态更新的。所以每个我们需要在该配置中给出结束范围。而不是这个解决方案是否可以选择所有行选择查询而不提供范围?如果可能,你能提供如何在EPPlus中使用选择查询吗?
请就此提出一些建议。
提前致谢。