有没有办法确定字符串(在表中)是否存在字符串,然后获取同一记录的另一个字段中的值?

时间:2017-12-13 20:33:47

标签: access-vba access

DCount不适用于此,因为它只确定实例是否存在。有任何想法吗?我认为这是一个非常简单的任务,但我很难找到适合使用谷歌的东西: - (

1 个答案:

答案 0 :(得分:1)

DLookup将为您提供与可选条件匹配的第一条记录(数据行)的数据源(表/查询)上的任何表达式的结果,包括不同列上的值。

  

dim foundValue AS Variant

     

foundValue = DLookup(" [ColumnName]"," [tableOrQueryName]"," [ColumnToCheckAgainst] ='某些字符串'&# 34)

它返回它在[ColumnName]列中找到的任何值(或者随意使用您将在SELECT语句中使用的任何表达式),表/ query [tableOrQueryName]中第一行的值与指定为第三个参数的条件相匹配(在这里允许放入WHERE子句中的任何内容,只记得你不能使用双引号来引用字符串值 - 你在字符串文字中使用另一个双引号来逃避它们,但如果你不需要单引号,例如,你指定数字。

您可以省略的标准参数(它是可选的,默认为无条件)。

将结果设置为Variant变量,因为它很可能是NULL(当任何记录都没有满足条件时)。

上面的例子与查询的工作方式相似" SELECT TOP 1 [ColumnName] FROM [tableOrQueryName] WHERE [ColumnToCheckAgainst] =' some string';"。

DLookup的文档: https://support.office.com/en-us/article/DLookup-Function-8896cb03-e31f-45d1-86db-bed10dca5937

另一种方法是使用Recordset对象。