2017-06-01 69 views
0

我需要解析数据的表中有大约5,000行。有时候,数据是这样访问查询给#Func!错误

Jones No# 434 
Jones 

我需要剥离出NO#后任何东西,我有这个疑问,其工作IF行包含文本NO#,但如果没有,我得到一个#Func!输入错误。

AC2013要做到这一点的正确方法是什么?

LastName: Left(LastName, InStr(LastName, "NO#")-1) 

回答

1

检查字符串中是否有NO#使用IIF

Instr返回文本的0的位置,或者如果它是不是在那里 - 所以只是检查,它不是0

LastName: IIF(InStr(LastName, "NO#")<>0,Left(LastName, InStr(LastName, "NO#")-1),LastName)

+0

辉煌,谢谢! – BellHopByDayAmetuerCoderByNigh

+0

如果没有空间,该如何更新?这意味着文字是否#434? – BellHopByDayAmetuerCoderByNigh

+0

在这两种情况下都会发现NO#_Jones NO#434_和_Jones NO#434_在第7个字符都没有#,所以只会返回_Jones_ –