我正在使用 Excel 2010。我需要创建一个宏,在特定单元格中输入文本后,将数据库连接的 SQL 命令文本相应地更改为输入的文本。执行刷新后,必须显示数据库中的最新信息。
我在更改 SQL 命令文本时遇到问题。下面的代码 - 确切地说,“Set 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 文件的名称。 “Report”是工作表的名称,其中的信息必须更新。
我发现了有关上述错误的类似帖子,但没有一个提到 QueryTable 属性。我期待您的答复!
最佳答案
在对象浏览器中查看 ListObject
有一个 QueryTable
而不是 QueryTables
集合;
Set qTable = Workbooks("Dynamic_Reports").Sheets("Report").ListObjects(1).QueryTable
关于sql - 更改 Excel 连接中的 SQL 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9177339/