我正在使用设计视图在Access 2010中执行简单的选择查询。我的源文件是一个excel工作表,我已链接到Access中的表。我可以查看源代码,但无法以任何方式修改它。
源文件中的一个列可能出现以下错误:" #NAME?"
当我看到错误时,我只想将值读作空字符串"",但是如果没有错误,我只想要该值。我研究了使用Nz,IIF,Switch和IsError的不同变体,但还没有取得任何成功。
我正在" Field"中尝试以下代码设计视图中的参数。
Program_Temp: IIf(IsError([Program]), "", [Program])
这是失败的,因为IIf评估" truepart"和" falsepart"因此即使错误地检测到错误,该功能也会出错,因为" [Program]"仍在评估中。
有没有办法实现这个目标?
答案 0 :(得分:0)
Excel会将值作为字符串传递给访问。 现在你只需要用空字符串替换错误。
Replace ( string1, find, replacement, [start, [count, [compare]]] )
Replace ( Program_Temp, "#NAME?", "" )
或
Replace ( Program_Temp, "#NAME?", vbnull )
我也建议和@serakfalcon一样。导入表,而不是链接表,当需要新信息时,删除数据并导入新数据。一个很好的副作用是错误将被替换为null。