sql - 更改 Excel 连接中的 SQL 命令

标签 sql excel vba

我正在使用 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/

相关文章:

sql 查询以查找匹配属性

python - 使用xlrd从xls获取 float

html - 字体大小未正确应用于新电子邮件 outlook 的正文

VBA Word : Difference between Font. TextColor 和 Font.ColorIndex?

excel - 为什么 Excel 调用的 UDF 次数超出了要求?

sql - 我如何分组连接每一行?

mysql - 如果存在 null 值,SUM 函数将返回 null

mysql - SQL GROUP BY语句只能用number来分组?

vba - Selenium VBA 代码在浏览器中粘贴数据

python - Excel不同格式的日期如何在Pandas数据框中排序