如何在VBA中将查询结果设置为等于变量?

时间:2009-06-24 20:27:52

标签: vba ms-access-2007

我有一张名为MIUInfo的表格。其中有三列; MIUIDLatitudeLongitude 在其中我运行以下查询,该查询获取条件范围内MIUID的数量。

SELECT Count(MIUInfo.MIUID)
      From MIUInfo 
      WHERE ((MIUInfo.Latitude Between " & minLat & " And " & maxLat & ") 
      AND (MIUInfo.Longitude Between " & minLong & " And " & maxLong & "))

我需要将此查询的结果设置为等于VBA中的变量,以便我可以将其用作循环的条件。我无法弄清楚如何做到这一点。

此外,当我尝试使用DoCmd.RunSQL命令时,我收到错误:

  

运行时错误'2342':RunSQL操作需要SQL语句的参数。

此查询与我使用DoCmd.RunSQL运行的其他查询之间的唯一区别是所有其他选择查询都在生成新表。

2 个答案:

答案 0 :(得分:0)

在Access中,最简单的方法是使用DCount函数:

Total = DCount("MIUInfo.MIUID", "MIUInfo", "(MIUInfo.Latitude Between " & minLat & " And " & maxLat & ") AND (MIUInfo.Longitude Between " & minLong & " And " & maxLong & ")")

答案 1 :(得分:0)

使用DCOUNT