MS Access:尝试选择与特定值对应的记录中的值

时间:2013-07-23 14:21:09

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

很抱歉,标题令人困惑。但我有一张表有几个不同的列。一列是KitNumber,另一列是ReturnDate。我正在尝试选择ReturnDate的值以查看条目的长度(同样,VBA是否允许您获取日期的长度?)。我需要做的是,用户将在未绑定中输入一个数字,然后该值将在表中查看是否与其中的另一个值匹配,如果匹配,则将选择返回日期。这是我现在的代码:

strSQL = "SELECT ReturnDate FROM Crew WHERE KitNumber = " & Me.AssignKit
Debug.Print strSQL
DateLen = Len(strSQL)

所以说我在未绑定中输入'111111'。我希望它在表格中查看是否有匹配的数字。然后,如果有,它应该返回ReturnDate值并获得它的长度。现在导致Debug只返回KitNumber而不是日期。任何人都可以帮助我吗?谢谢

1 个答案:

答案 0 :(得分:1)

如果是一次性,那么 OnExit OnChange 事件中的DLookup应该会为您提供您需要使用的信息

使用您的示例,

Debug.Print DLookup("ReturnDate","Crew","KitNumber = " & Me.AssignKit)

如果KitNumber作为字符串存储在数据库中,那么您需要在选择周围加上引号

Debug.Print DLookup("ReturnDate","Crew","KitNumber = '" & Me.AssignKit & "'")

请注意,DLookup会返回找到的第一个,因此如果您需要多个值,则必须查看记录集函数.Find.FindNext