在带有分隔文本的MS Access 2010中使用InStr

时间:2014-07-31 15:19:52

标签: ms-access ms-access-2010

我试图找到Roles.Referenced中提到的密钥(Rejects.ID)。

InStr通常适用于此,但两个字段的范围均为2-4个字符。有些内容可以在Referenced中找到ID的字符,其中ID为34,Referenced为1234。

引用由分号分隔,但第一个和最后一个条目除外。我可以通过在ID之前和之后填充分号找到99%的条目,这适用于大多数 -

InStr(Roles.Referenced,(";" & Rejects.ID & ";"))

除了添加前导和尾随分号之外,有没有办法可以在Referenced中找到所有ID实例?

谢谢你, JF

1 个答案:

答案 0 :(得分:0)

我能想到的唯一解决方案是测试所有可能的场景:在分隔符包围的字符串中,在字符串的开头或字符串的末尾。

   InStr(Roles.Referenced,(";" & Rejects.ID & ";")) > 0
OR LEFT (Roles.Referenced,LEN(Rejects.ID))=CStr(Rejects.ID)
OR RIGHT(Roles.Referenced,LEN(Rejects.ID))=CStr(Rejects.ID)