检查记录是否与另一个MS Access VBA / SQL匹配

时间:2015-05-24 16:52:39

标签: sql ms-access access-vba ms-access-2010

我不确定如何通过VBA找到匹配的记录。在SELECT SQL中,它选择的是与表CFRRR中的programlanguage字段匹配的记录。在IF语句中,我想知道所选记录的caseid(也是CFRRR中的字段)是否与CFRRR上另一条记录的casedid匹配。我不确定是否走DLookup或Match的方向。我在这里:

 strSQL = "SELECT CFRRRID, [Program], [language] FROM CFRRR
 WHERE assignedto Is Null"
    Set rs = db.OpenRecordset(strSQL, dbOpenDynaset)

    If rs.currentrecord.caseid

1 个答案:

答案 0 :(得分:1)

SELECT CFRRRID 并且您想知道 CFRRRID 值是否存在于同一个表的另一行中。您可以添加DCount表达式来查找。

strSQL = "SELECT CFRRRID, [Program], [language], " & _
    "DCount('*', 'CFRRR', 'CFRRRID=' & CFRRRID) AS CountOfCFRRRID " & _
    "FROM CFRRR WHERE assignedto Is Null"

当计算值 CountOfCFRRRID 大于1时,您知道当前的 CFRRRID 值存储在表的另一行中。