在Excel连接中更改SQL命令

我正在使用Excel 2010.我需要创build一个macros,在特定单元格中input文本后,将连接的SQL命令文本相应地更改为input的文本。 执行刷新后,必须显示来自数据库的最新信息。

我遇到了更改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文件的名称。 “报告”是工作表的名称,信息必须更新。

我发现上面的错误类似的post,但他们都没有谈到QueryTable属性。 我期待着你的回答!

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

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