我已经更改了文本框“输入键行为”,以便每次我按Enter键时,文本框都会转到下一行,
当用户单击“按钮”时,子窗体显示第一行的结果,但随后显示如何在用户输入的每一行中获取结果。
Private Sub CountButton_Click()
Dim SQL As String
SQL = "SELECT database.Tracking, database.Date, DateDiff(""d"",[Date],Date()) As Aeging FROM database;"
Me.Query1_subform.Form.RecordSource = SQL
Me.Query1_subform.Form.Requery
End Sub
我是否需要使用Loop或VbCrLf或其他功能来使文本框起作用
将文本框值拆分为数组并循环数组以生成逗号分隔的字符串,或:
strIN = Replace(Me.textbox, vbCrLf, "','")
If InStrRev(strIN, "','") > 0 Then strIN = Left(strIN, Len(strIN)-3)
SQL = "SELECT database.Tracking, database.Date, DateDiff('d', [Date], Date()) As Aging " & _
"FROM database " & _
"WHERE Tracking IN('" & strIN & "');"
使用文本框依赖于用户与输入保持一致-不能以CR开头输入,也不会意外或以其他方式输入其他无关字符。
更可靠的替代方法是跟踪值的多选列表框。代码循环遍历选定的项目并构建以逗号分隔的字符串。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句