在Excel数据源SQL查询中使用TableName而不是命名范围

时间:2010-07-27 16:18:50

标签: sql excel-vba excel-2007 vba excel

在Excel VBA中,我使用Excel作为某些查询的数据源。 我正在使用查询

SQL = "Select * from   [NameRange1]"   - This works

但是,我想使用表名而不是Namerange(Excel 2007 Tables)。我该怎么用? 我试过了"select * from [Table1]",我也尝试为这个table1创建一个Namerange,它也没有用。

请问任何想法?

1 个答案:

答案 0 :(得分:1)

您没有说您是使用DAO还是ADO进行连接,但我认为这并不重要。我认为不可能引用表格。我见过的所有文档都列出了三种类型的范围:整张表[Sheet1 $],命名范围[NameRange1]或未命名范围[Sheet1 $ A1:B10]。

我能够为Excel 2010表提供一个包含标题的命名范围,其工作方式与任何其他命名范围一样,并且通过添加行来更改大小。确保如果它是一个工作表级别的命名范围,你就像[Sheet1 $ NameRange1]那样。

我在使用ADO时发现的最佳信息是:http://www.xtremevbtalk.com/showthread.php?t=217783