我正在使用OleDb从具有很多工作表的excel工作簿中阅读。
我需要阅读工作表名称,但需要按照电子表格中定义的顺序进行操作;所以如果我有一个看起来像这样的文件;
|_____|_____|____|____|____|____|____|____|____|
|_____|_____|____|____|____|____|____|____|____|
|_____|_____|____|____|____|____|____|____|____|
\__GERMANY__/\__UK__/\__IRELAND__/
那我要拿字典
1="GERMANY",
2="UK",
3="IRELAND"
我尝试使用OleDbConnection.GetOleDbSchemaTable()
,这会给我提供名称列表,但是会按字母顺序对它们进行排序。alpha排序表示我不知道特定名称对应的工作表编号。所以我得到了;
GERMANY, IRELAND, UK
更改了UK
和的顺序IRELAND
。
我需要对它进行排序的原因是,我必须让用户按名称或索引选择数据范围。他们可以要求“从德国到爱尔兰的所有数据”或“从表1到表3的数据”。
任何想法将不胜感激。
如果我可以使用office互操作类,这将很简单。不幸的是,我不能,因为互操作类在非交互式环境(例如Windows服务和ASP.NET站点)中无法可靠地工作,因此我需要使用OLEDB。