将两个范围插入SQL命令文本、Excel VBA

j9per5c4  于 2023-02-17  发布在  其他
关注(0)|答案(1)|浏览(127)

我的宏遇到了一些问题,我需要将两个范围插入到SQL查询中。原因是它超出了Excel的1个单元格的字符限制,所以我使用了一个公式将查询拆分为2个(请记住拆分的空格以保持语法正确)。
然而,我的VB注入两个范围一起不工作,所以很明显有什么我没有考虑正确。错误是运行时错误1004:应用程序定义或对象定义的错误
以下是它当前的显示方式:

With ActiveWorkbook.Connections("Qry").ODBCConnection
.CommandText = Range("Cell1") & Range ("Cell2")
End With

我也尝试过添加. value,以及在之前声明范围然后调用它们。注意:Cell1是我为单元格指定的名称。
当使用Debug. Print on Range("Cell1")& Range("Cell2")时,语句混乱,Cell1在正确连接到Cell2之前的中途开始,然后Cell1的开始部分突然再次开始。

yks3o0rb

yks3o0rb1#

即时窗口被限制在200行以内,所以debug.print不会显示完整的文本。将sql写入文件,也许可以在数据库客户端测试它。

Dim sql as string, ts
sql = Range("Cell1") & Range("Cell2")
With CreateObject("Scripting.FileSystemObject")
    Set ts = .createTextFile("debug.sql")
    ts.Write sql
    ts.Close
End With

相关问题