尝试使用 VBA 代码将 SQL 数据库中的数据检索到 Excel 工作表时,用户可能会遇到运行时错误 3704,指示对已关闭对象的操作无效。这通常发生在将数据从记录集复制到 Excel 工作表的步骤中。
此错误的一个潜在原因在于连接字符串。确保连接字符串包含 Initial Catalog 参数,指定要访问的数据库的名称。下面是带有参数的更新连接字符串:
objMyConn.ConnectionString = "Provider=SQLOLEDB;Data Source=localhost;Initial Catalog=MyDatabase;User ID=abc;Password=abc;"
另一个问题可能是在指定 SQL 命令时使用额外的间接层。为了简化代码并避免错误,可以直接使用 SQL 语句字符串,如下所示:
strSQL = "select * from myTable"
然后使用 SQL 语句字符串作为命令文本打开记录集:
objMyRecordset.Open strSQL
通过解决这些潜在问题并确保连接字符串完整并且 SQL 命令正确执行,您应该能够使用以下命令成功地将数据从 SQL 数据库检索到 Excel 工作表中VBA。
以上是为什么在 Excel VBA 中访问 SQL 数据库时出现运行时错误 3704?的详细内容。更多信息请关注PHP中文网其他相关文章!