微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在子句中使用通配符

如何解决如何在子句中使用通配符

是否可以使用#之类的通配符来匹配以子句中的数字开头的项目

以下作品:
条件:In ("2T","2TF","2TC","2TO","2TFC","2TOC","2C","2CO","2FC")

但是我也想捕捉“ 3TF”和“ 6TF”之类的实例
但显然以下方法不起作用
条件:In ("T","#TF","#TC","#TO","#TFC","#TOC","#C","#CO","#FC")

有没有办法解决这个问题

更新[尝试尝试Erik A的建议]

enter image description here

解决方法

假设您要尝试使用任何单个整数前缀匹配记录的任何后缀,则可以使用likein的组合,并使用{{1}删除第一个字符},例如:

mid

或者,仅使用myfield like "#*" and mid(myfield,2) in ("T","TF","TC","TO","TFC","TOC","C","CO","FC")

like

在这里,myfield like #T or myfield like #C or myfield like #T[FCO] or myfield like #T[FO]C or myfield like #CO or myfield like #FC T[FCO]TFTC相匹配;同样,TO匹配T[FO]CTFC

,

不能。添加

Where 
    Field In ("2T","2TC","2TO","2TFC","2TOC","2C","2CO","2FC") Or
    Field Like "#TF"
,

没有VBA,就不能,但是有了VBA,这很容易:

声明一个函数进行匹配:

Public Function InLike(DatabaseField As Variant,ParamArray LikeConditions() As Variant) As Boolean
    Dim v As Variant
    For Each v In LikeConditions
        If DatabaseField Like v Then
            InLike = True
            Exit Function
        End If
    Next
End Function

然后使用它:

InLike (MyField,"T","#TF","#TC","#TO","#TFC","#TOC","#C","#CO","#FC")

请注意,第一个参数是字段,因此其处理方式略有不同。另外,由于它是VBA,因此会对性能和兼容性产生影响。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。