使用QODBC的VBA SQL循环

时间:2014-06-03 03:05:58

标签: sql vba access-vba quickbooks

我正在尝试遍历现有的表(tblSalesOrder),我需要遍历每一行(它们与该特定客户的关系)并将每一行写入SQL语句并执行它。

这个程序最简单的方法是什么?

在通过SQL将数据写入QuickBooks数据库之前,需要计算行数。

我可以使用下面的代码在php中编写类似的代码,但我不确定如何将其转换为VBA友好格式:

$sql_count = "SELECT count(*) FROM tblSalesOrder WHERE Customer='cust_number'";
execute_query($sql_count)

当上述值大于0时,vba代码应遍历查询。

2 个答案:

答案 0 :(得分:0)

您需要一个记录集来执行和存储您的查询结果。

Dim sql_count As String
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset

您需要连接到数据库连接。 “cn”存储与QuickBooks的连接。

sql_count = "SELECT count(*) FROM tblSalesOrder WHERE Customer='cust_number'"
Set rs = cn.Execute(sql_count)

Do While rs.Fields(0).Value > 0 ' rs.Fields(0) should get you the count(*)
' your codes
Loop

对于QuickBooks的连接字符串,您可能会阅读here

答案 1 :(得分:0)