在Excel连接中更改SQL命令

时间:2012-02-07 13:45:44

标签: sql excel vba

我正在使用Excel 2010.我需要创建一个宏,在特定单元格中输入文本后,将连接的SQL Command文本相应于输入的文本更改为数据库。执行刷新后,必须显示数据库中的最新信息。

我在更改SQL命令文本时遇到问题。下面的代码 - “设置qTable ..”行准确地给出了“运行时错误9下标超出范围”错误。

Dim qTable As QueryTable
Set qTable = Workbooks("Dynamic_Reports").Sheets("Report").ListObjects(1).QueryTables(1)
qTable.commandText = commandText
qTable.Refresh

“Dynamic_Reports”是Excel文件的名称。 “报告”是工作表的名称,其中信息必须更新。

我发现了有关上述错误的类似帖子,但他们都没有提到QueryTable属性。我期待着你的回答!

1 个答案:

答案 0 :(得分:2)

在对象浏览器中查看ListObject只有一个QueryTable而不是QueryTables集合;

Set qTable = Workbooks("Dynamic_Reports").Sheets("Report").ListObjects(1).QueryTable