1

我有以下连接字符串:

string conn = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=template.xls;Extended Properties=""Excel 12.0 XML;""";

连接成功。我在excel表中有以下数据

ID  Channel Upload
2_b_20_1    1   0,0 Mbps
2_b_20_2    2   0,0 Mbps
2_b_20_3    3   0,0 Mbps
2_b_20_4    4   0,0 Mbps
2_b_20_5    5   0,0 Mbps
2_b_20_6    6   0,0 Mbps
2_b_20_7    7   0,0 Mbps
2_b_20_8    8   0,0 Mbps
2_b_20_9    9   0,0 Mbps
2_b_20_10   10  0,0 Mbps
2_b_20_11   11  0,0 Mbps
2_b_20_12   12  0,0 Mbps
2_b_20_13   13  0,0 Mbps

我需要在第一列中找到包含字符串的单元格的地址。所以在伪选择中它会像:

Select "CellAdress" from [MySheet] where Value like '2_b_20_1'

它应该返回这个单元格的地址。

我还没有任何代码,我只是不知道从哪里开始。

有可能吗?先感谢您

4

1 回答 1

4

对于连接字符串,我总是去ConnectionString.com。搜索您尝试打开的 Excel 文件版本的类型。

我猜你应该是:



    "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=template.xls;Extended Properties=\"Excel 12.0 Xml;HDR=YES\"";

具有 SQL 查询字符串,对于 excel,您应该这样做



    "SELECT * FROM [<SheetName>$<optional range>]";

例如,如果工作表名称是 MySheet 你可以做



    "SELECT * FROM [MySheet$]";

如果你想选择一个特定的范围,你可以这样做。



    "SELECT * FROM [MySheet$A1:C200]";

在您的情况下(不知道您的其余代码很难),但我相信您需要的是:



    "SELECT * FROM [MySheet$] WHERE ID='2_b_20_1'";

于 2013-03-26T11:22:32.583 回答