Can"动态命名范围"在excel中使用OLEDB连接进行访问?

时间:2014-10-27 23:38:32

标签: c# excel vba oledb ole

我正在尝试使用经常用于此目的的以下公式访问dynamic named range

=offset(...,0,0,counta(...),...)
  

动态命名范围 " 在Microsoft Excel中,您可能有一个必须扩展的命名范围以包含新信息。本文   描述了一种创建动态定义名称的方法。"

但是,OleDbConnection无法识别此对象并抛出" Microsoft Access数据库引擎无法找到对象' Arg4a'的一般错误。确保对象存在,并且您正确拼写其名称和路径名。"

我已经在这里和那里读到dynamic named ranges无法在此方法中使用,但是我想要对此进行确认,然后我可以继续思考另一种选择。

如下所示,Excel不会列出动态版本的value。我可以轻松访问任何范围内的_Arg3(工作簿或特定工作表),但对Arg4没有好运。

enter image description here

我正在使用一个简单的选择,如下面的全局命名范围:

var select = "SELECT * FROM _Arg4";
var cmd = new OleDbCommand(select, conn);

以及以下connection string

strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + FileName + ";Extended Properties=\"Excel 12.0;HDR=" + HDR + ";IMEX=1\""
  • 我还在此标记了vba,因为这种情况也可以用这种语言实现,我使用了很多与vba相关的资源来学习一般的想法。
  • 我正在使用的方法的全部内容位于 XLS导入位于:Import Excel File to DataSet

0 个答案:

没有答案