VBA / MS ACCESS 检查给定值是否出现在表列中

问题描述

我想检查 1 到 20 范围内的值是否在列中。我的表格如下所示:

ID      |     Value

1              34       
2              22       
3              56       
7              72       
15             88       
20             49       

我的代码如下:

Dim a As Variant
Set rs = CurrentDb.OpenRecordset("Table",dbOpenSnapshot)
For a = 1 To 41
    If rs!ID <> a Then
        x = x + 1
    End If
Next a
TextBox = x

不幸的是,这仅将值与列中的第一个值进行比较。 我想计算从 1 到 20 有多少个值不在 ID 列中。 如何循环比较该列中的每条记录?

解决方法

你可以使用 DCount,我猜:

x = DCount("*","Table","ID Between 1 And 41")