VBA ACCESS比较字符串,因为它们是整数

时间:2016-03-21 16:10:44

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

我试图提示用户输入一个范围并在子窗体中显示该范围内的所有乐器。

问题:上下范围是文本字段(因为某些范围不能以整数表示)。如截图所示,比较仅比较字段的第一个字符。

用户输入:5 - 3 在子表单上: 3 6 - 4 它比较5和3而不是36

我知道vba正在做的事情,但我怎么能达到我想要的结果呢?

enter image description here

以下是我需要重新命名子表单的代码:

$ echo -Dapp.id=XXX -Dapp.name=YYY -Dapp.inventory.id=KKK -Dapp.inventory1.id=UNDEFINED -app.id=MMM | 
  awk -v RS=' +' '/app.inventory.id/{split($0,a,"=");print a[2]}'

KKK

2 个答案:

答案 0 :(得分:2)

所以我所做的是在查询中创建了一个新列     IIf(IsNumeric([Upper]), Val([Upper]), Null) 获得所有数字结果。

然后在vba中,我查询子表单如下

SQL = SQL_Origin & " WHERE [qry_View_Search].[Upper] <= cint(Forms![frm_View_Search]![Text_U]) " _
                                    & "AND [qry_View_Search].[Lower] >= cint(Forms![frm_View_Search]![Text_L]);"

谢谢@HansUp!

答案 1 :(得分:0)

我已经成功地使用了仅使用Val的那些案例:

Value: Val([FieldName])

或:

Value: Val(Nz([FieldName]))