MS Access 文本字段特殊字符
MS Access Text Field Special Characters
我有一个执行此 applyfilter
宏代码的搜索按钮:
[ContractNumber] Like "*" & [Forms]![frmContractMatch&Revenue]![Text44] & "*"
因此它会在文本框 text44
中搜索合适的 ContractNumber
。我遇到的问题是,如果合同号是 ART#45
,由于特殊字符 #
,它不会在数据库中找到它。
我该如何解决这个问题?问题是合约可能有不同的特殊字符,或者它们可能根本没有 none,所以我不能告诉它一直专门搜索特定的符号。
Access 使用 # 作为单个数字字段的通配符。当您创建搜索字段并包含 #(例如 ART#)时,Access 将其解释为 "I'm searching for the string 'ART' followed by a single numeric character 0-9" 它同样使用“?”、“%”和“-”。要解决这个问题,您需要更改输入字符串并将文字特殊字符括在方括号中。所以不是搜索:
'ART#'
您将搜索:
'ART[#]'
你是如何解决这个问题的?取决于您输入搜索条件的方式。这个区域并不是我的强项,但根据输入搜索的方式,您可能可以使用自定义函数在过滤表单之前将方括号添加到参数中。我个人会通过代码阻止在订单号中使用特殊字符。
我有一个执行此 applyfilter
宏代码的搜索按钮:
[ContractNumber] Like "*" & [Forms]![frmContractMatch&Revenue]![Text44] & "*"
因此它会在文本框 text44
中搜索合适的 ContractNumber
。我遇到的问题是,如果合同号是 ART#45
,由于特殊字符 #
,它不会在数据库中找到它。
我该如何解决这个问题?问题是合约可能有不同的特殊字符,或者它们可能根本没有 none,所以我不能告诉它一直专门搜索特定的符号。
Access 使用 # 作为单个数字字段的通配符。当您创建搜索字段并包含 #(例如 ART#)时,Access 将其解释为 "I'm searching for the string 'ART' followed by a single numeric character 0-9" 它同样使用“?”、“%”和“-”。要解决这个问题,您需要更改输入字符串并将文字特殊字符括在方括号中。所以不是搜索:
'ART#'
您将搜索:
'ART[#]'
你是如何解决这个问题的?取决于您输入搜索条件的方式。这个区域并不是我的强项,但根据输入搜索的方式,您可能可以使用自定义函数在过滤表单之前将方括号添加到参数中。我个人会通过代码阻止在订单号中使用特殊字符。