以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  表达式列的表达式问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=53185)

--  作者:hongyefor
--  发布时间:2014/7/1 19:04:00
--  表达式列的表达式问题

如何在表达式列(G列)写如下的公式呢:

如果A列的内容是“1”的话且E列为“1”则计算(B列+(C列-D列))

如果A列的内容是“2”的话且E列为“1”则计算(B列+(C列-D列))*2

如果A列的内容是“2”的话且E列为“2”则计算(B列+(C列-D列))*3

如果A列的内容是“1”的话且E列为“2”则计算=F列


--  作者:有点甜
--  发布时间:2014/7/1 19:07:00
--  
iif(A=1 and E=1, B+C-D, iif(A=2 and E=1, (B+C-D)*2, iif(A=2 and E=2, (B+C-D)*3, iif(A=1 and E=2, F, null))))
--  作者:hongyefor
--  发布时间:2014/7/2 9:39:00
--  

晕,A和E列的不是数据是文本哦

 


--  作者:有点甜
--  发布时间:2014/7/2 9:41:00
--  
以下是引用hongyefor在2014-7-2 9:39:00的发言:

晕,A和E列的不是数据是文本哦

 

 

文本,就加单引号

 

iif(A=\'1\' and E=\'1\', B+C-D, iif(A=\'2\' and E=\'1\', (B+C-D)*2, iif(A=\'2\' and E=\'2\', (B+C-D)*3, iif(A=\'1\' and E=\'2\', F, null))))


--  作者:Bin
--  发布时间:2014/7/2 9:43:00
--  
是文本就  多加单引号  A=\'1\'
--  作者:hongyefor
--  发布时间:2014/7/2 9:45:00
--  
那如果再加上H列有数据直接=H列,怎么写啊
--  作者:有点甜
--  发布时间:2014/7/2 9:49:00
--  

isnull(H,iif(A=\'1\' and E=\'1\', B+C-D, iif(A=\'2\' and E=\'1\', (B+C-D)*2, iif(A=\'2\' and E=\'2\', (B+C-D)*3, iif(A=\'1\' and E=\'2\', F, null)))))

或者

 

iif(H is not null, H, iif(A=\'1\' and E=\'1\', B+C-D, iif(A=\'2\' and E=\'1\', (B+C-D)*2, iif(A=\'2\' and E=\'2\', (B+C-D)*3, iif(A=\'1\' and E=\'2\', F, null)))))

[此贴子已经被作者于2014-7-2 9:49:24编辑过]