我喜欢使嵌套的IF语句像IF / ELSE一样运行。它不是最优雅的解决方案,但我想在我改进它之前让它运转起来。
继承人我正在尝试做的事情
如果没有错误: 如果condition = TRUE在b4中搜索给定的标准并除以10000, 如果condition = FALSE,IF condition2 = TRUE,Search和b5给出标准并除以1000 如果condition2 = False,则显示" ERROR" 如果错误则显示""。
我将以下内容放入公式栏:
= IFERROR(IF(CLIENT = TRUE,SEARCH(搜索!$ B $ 4 -C 6)+ ROW()/ 100000,IF(WORK_ORDER = TRUE,SEARCH(搜索!$ B $ 5 D6)+ ROW()/ 100000," ERROR",)"&#34)
我收到错误,说函数有太多参数。
答案 0 :(得分:3)
我相信你把逗号放在" ERROR
"在错误的地方(它应该在结束括号后)。目前,第二个IF
函数有四个参数而不是三个(第四个参数是"未定义",但逗号暗示它存在)。此外,您错过了" ERROR
"之后的第二个结束括号。你应该关闭这两个IF语句。
试试这个:
=IFERROR(IF(CLIENT=TRUE,SEARCH(Search!$B$4,C6)+ROW()/100000,IF(WORK_ORDER=TRUE,SEARCH(Search!$B$5,D6)+ROW()/100000,"ERROR")),"")
不幸的是,我现在无法自己测试。
<小时/> 由Aprillion编辑:您也可以按 Alt + Enter 在公式中插入换行符,使其更具可读性(它也是可以将以下公式直接复制并粘贴到公式栏中,但不能将其复制并放入工作表中将拆分为多个单元格的单元格中):
=IFERROR(
IF(client,
SEARCH(Search!$B$4, C6) + ROW() / 100000,
IF(work_order,
SEARCH(Search!$B$5, D6) + ROW() / 100000,
"ERROR")),
"")