if公式问题

if(or(A,B,C),D,E),每次执行该语句只会执行后面E的部分

if(or(yew='A',yew='B',yew='C',yew='D'),(if(and(I2 = '贸易商', H2 >= 500),J2 * 100, (if(and(I2 = '贸易商', H2 < 500),H2 * 0.1, (IF(and(I2 = '工程客户', H2 >= 300),J2 * 300, (IF(and(I2 = '工程客户', H2 < 300), H2 * 0.4, (IF(and(I2 = '新型材料', H2 >= 300),J2 * 300,(IF(and(I2 = '新型材料', H2 < 300),H2 * 0.5, (IF(and(I2 = '搅拌站', H2 >= 1000),J2 * 100, (IF(and(I2 = '搅拌站', H2 < 1000), H2 * 0.1, 0.5 * H2)))))))))))))))),(if(and(I2 = '贸易商', H2 >= 1000),J2 * 200, (if(and(I2 = '贸易商', H2 < 1000),H2 * 0.1, (IF(and(I2 = '新型材料', H2 >= 1000),J2 * 200, (IF(and(I2 = '新型材料', H2 <1000), H2 * 0.2, (IF(and(I2 = '搅拌站', H2 >= 1500), J2 * 300, (IF(and(I2 = '搅拌站', H2 < 1500), H2 * 0.2,0)))))))))))))


FineReport 超爱冰阔落 发布于 2020-9-29 10:59 (编辑于 2020-9-29 11:02)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
sayLv6初级互助
发布于2020-9-29 14:40(编辑于 2020-9-29 14:42)

既然你都说了无论yew是A还是B还是C,它都按E计算,那我怀疑你的判断条件是不是有问题,yew='A',yew='B',yew='C',yew='D'你能否验证一下这几个是否真的成立,?

先简单的判断一下if(yew='A',a,b)看当A时是不是a?

  • 超爱冰阔落 超爱冰阔落(提问者) 我试了,还是按照后面的算
    2020-09-29 14:42 
  • say say 回复 超爱冰阔落(提问者) 那就是你本身的yew=\'A\'有问题啊,不是if的问题, 就是你认为yew=\'A\'的但是实际他并不成立啊
    2020-09-29 14:43 
最佳回答
0
krystal033Lv7高级互助
发布于2020-9-29 11:01

具体的场景怎么样的  我怀疑你公式写错了 or的话只会返回false 或者 true

  • 超爱冰阔落 超爱冰阔落(提问者) 我完善了一下,麻烦您看一下公式
    2020-09-29 11:02 
  • krystal033 krystal033 回复 超爱冰阔落(提问者) or 改成 || and 改成&& if (A1=1||A1=2) 这样表示a1=1或者a1=2 if (A1=1&&A1=2)表示a1=1 and a1=2 帆软里面的and or 和excel不一样
    2020-09-29 11:04 
  • 超爱冰阔落 超爱冰阔落(提问者) 回复 krystal033 还是没用
    2020-09-29 14:40 
  • krystal033 krystal033 回复 超爱冰阔落(提问者) 那就是你写的问题了 仔细检查一下吧
    2020-09-29 14:45 
最佳回答
0
指间沙Lv6中级互助
发布于2020-9-29 11:02(编辑于 2020-9-29 11:09)

等于ABC的话就是D,否者就E,或就用||和就用 &&

yew='A'||yew='B'||yew='C'

yew='A' && yew='B'&&yew='C'

  • 4关注人数
  • 382浏览人数
  • 最后回答于:2020-9-29 14:42
    请选择关闭问题的原因
    确定 取消
    返回顶部