如何解决在MS Access中使用CCur时如何处理错误“ #Error”
如果字符串表达式有效,我正在尝试使用Access将具有一列字符串的表转换为Currency。
我的输入
line data
--------------
8 Date
9 66.00
我的查询
SELECT line,CCur([data]) AS data
FROM Input;
line data
--------------
8 #Error
9 $66.00
我的理想输出是
line data
--------------
9 $66.00
我想过滤查询中的#Error。但是,当我使用标准字段(即> 0)时,会提示我数据类型不匹配。
我还尝试将IsError()
或IsNumeric()
与IIF配合使用来捕获错误。但是,它仍然在输出中显示#Error。
我在帖子中也发现Nz()
可以提供帮助。仍然,在我的情况下是同样的#Error。
解决方法
过滤IsNumeric
:
SELECT line,CCur([data]) AS data
FROM Input
WHERE IsNumeric([data])
请注意,这仍然会在内部引发错误,只是不会返回错误。在某些情况下(例如,使用VBA打开记录集时),这可能是个问题。我们可以避免使用IIF:
SELECT line,CCur(Iif(IsNumeric([data]),[data],0)) AS data
FROM Input
WHERE IsNumeric([data])
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。