[算表] IFERROR 前面加上负号

楼主: quirrky (@@)   2020-05-05 00:21:56
软件:Excel
版本:2010
各位前辈好
想请教这个公式
=-IFERROR(ROUND((VLOOKUP(A88,data,13,FALSE))/J88/8*S88,0),0)
算出的数值显示为“-586”
一组负数
此公式设在计算事假扣薪字段
因为移除“-IFERROR”直接在ROUND前面加上“-”无效
(无法显示富庶的数值)
想了解为何需要“-IFERROR”
谢谢解惑
作者: soyoso (我是耀宗)   2020-05-05 07:19:00
于2010模拟,移除iferror,在round前加上负号,或是在iferror前加上负号,回传的结果相同,所以是否提供档案看看会比较清楚https://i.imgur.com/c7SOk71.jpg 连结内data模拟上为b:n
作者: olycats ( )   2020-05-05 07:24:00
无效是指数字不对?还是发生错误无法计算?是负号换位置无效?还是移除iferror的公式无效?如果是负号换位置 计算出来的结果应该是一样的 同s大意见
楼主: quirrky (@@)   2020-05-05 13:44:00
直接在ROUND前面加上-号,成功变成负值。谢谢大家似乎此组公式不需要加上IFERROR? 无法找出使用的目的
作者: soyoso (我是耀宗)   2020-05-05 14:40:00
使用的目的就是当round(...)运算后为错误值时回传01.如是vlookup无搜寻到data最左侧栏有符合的值或是a栏为空白储存格时,回传#n/a错误值2.有搜寻到,但j栏为0值,除于0值回传#div/0!错误值所以问公式不需要加上iferror?方面就看是否会遇到以上二点(有可能还有其他会回传错误值的情况)如不会遇到或是遇到就显示错误值的话,也就不需要配合iferror,反之,就配合
作者: olycats ( )   2020-05-05 19:35:00
以原po的例子来说最有可能是是vlookup找不到对应的值如果找不到值就会显示#N/A无法计算出结果iferror的目的就是如果发生错误 直接带出0建议原po可以了解一下iferror公式的用法或者试试看把原本的公式拿掉iferror 看看结果有什么不同

Links booklink

Contact Us: admin [ a t ] ucptt.com