我正在使用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属性。我期待着你的回答!
答案 0 :(得分:2)
在对象浏览器中查看ListObject
只有一个QueryTable
而不是QueryTables
集合;
Set qTable = Workbooks("Dynamic_Reports").Sheets("Report").ListObjects(1).QueryTable