2013-07-23 41 views
0

对不起,如果标题混淆。但我有一张桌子,有几个不同的列。一栏是KitNumber,另一栏是ReturnDate。我试图选择ReturnDate的值来查看条目的长度(还有,VBA是否让您获得日期的长度?)。我需要做的是,用户将以未绑定的方式输入一个数字,然后该数值将在表格中查看,以确定它是否与其中的另一个值匹配,如果是,则会选择返回日期。这里是我现在的代码:MS Access:尝试选择对应于某个值的记录中的值

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

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

+2

我有几个问题 1)是KitNumber一个数字或文本数据类型? 2)你是否知道你实际上并没有执行上面的sql语句,只是准备它? 3)你能否解释一些关于测量日期长度的要求。你试图说的是什么? – ChrisProsser

+0

'Debug.Print strSQL'只会打印出整个select语句,而不是结果,因为@ChrisProsser说你没有执行任何操作。尝试更改最后一个引用:'='“&Me.AssignKit&”'“'那么你将不得不将strSQL设置为一个记录集来提取数据。 – Grant

+0

'KitNumber'是一个数字,我想要做的这是提取'ReturnDate'值,其中未绑定的值匹配'KitNumber' – Patrick

回答

1

如果它是一次性的,然后在的OnExit的OnChange事件应该给你,你需要使用你的例子与

工作的信息一DLookup

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

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

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

注意使用DLookup返回它找到的第一个,所以如果你需要多个值,你将不得不考虑记录功能.Find.FindNext

相关问题