【发布时间】:2013-06-11 03:41:28
【问题描述】:
我正在尝试使用 ASP .NET/C# 从 Excel 中的特定命名范围中提取数据。这是我要提取的示例。
我想要的是使用名称“RANGE_NAMED”的“B”、“C”、“D”。可以用 OleDB 做到这一点吗?
最好的问候,
亚历克斯。
【问题讨论】:
标签: c# asp.net excel oledb extract
我正在尝试使用 ASP .NET/C# 从 Excel 中的特定命名范围中提取数据。这是我要提取的示例。
我想要的是使用名称“RANGE_NAMED”的“B”、“C”、“D”。可以用 OleDB 做到这一点吗?
最好的问候,
亚历克斯。
【问题讨论】:
标签: c# asp.net excel oledb extract
你可以试试这个代码
using(OleDbConnection c = new OleDbConnection(con))
{
c.Open();
string selectString = "SELECT * FROM [RANGE_NAMED]";
using(OleDbCommand cmd1 = new OleDbCommand(selectString))
{
cmd1.Connection = c;
var result = cmd1.ExecuteReader();
while(result.Read())
{
Console.WriteLine(result[0].ToString());
}
}
}
【讨论】:
HasFormula 吗?
OleDb 中是否有这样的属性。如果无论如何我们可以将上述result 中的范围序列化,并在通过阅读器读取时将其反序列化为C# 中的excel 范围。我只是在大声思考——如果你能指出任何相关信息,那就太好了。
好吧,这很明显,我不知道为什么它第一次不起作用......
SELECT * FROM RANGE_NAMED
我得到 B、C、D。
【讨论】: