繁体   English   中英

Excel 公式太多 arguments

[英]Excel Formula too many arguments

我试图看看这个公式有什么问题,但我没有看到:

=IF(F5:M5;"*Accepted*";IF(F5:M5;">"&TODAY();IF(F5:M5;"*N/A*";"Verified";"Pending")))

我错过了什么吗? 我要做的是,如果 F5 到 M5 的值是这些条件之一,那么将验证列“状态”,如果其中一个值不被接受,大于今天(),或“N /A”,然后 State 将是“待定”。

文件1 文件2 文件3 文件4 文件5 文件6 文件7 文件8 地位
已到期 已到期 2020 年 12 月 31 日 2020 年 12 月 30 日 公认 公认 不适用 24/11/2021
2020 年 12 月 24 日 44197 2020 年 12 月 30 日 2020 年 12 月 30 日 公认 空的 不适用 44563
已到期 已到期 被拒绝 44234 公认 公认 不适用 不适用
已到期 已到期 不完整 不完整 公认 空的 不适用 不适用
44378 44228 已到期 44203 公认 公认 不适用 被拒绝 待办的
公认 公认 公认 44197 公认 公认 不适用 不适用 公认

您需要检查 3 个标准

  1. 值等于Accepted
  2. 值等于N/A
  3. 日期大于Today()

如果您单独对每一行的标准求和,您最终应该得到8个(即列中的所有八个单元格都符合上面列出的标准之一)。 如果计数小于 8,其中一个值不符合标准,因此应处于Pending状态。

=IF(COUNTIF(A2:H2,"Accepted")+COUNTIF(A2:H2,"N/A")+COUNTIF(A2:H2,">"&TODAY())=8,"Verified","Pending")

这将做你想做的事,你可以添加一个 IF 来获得“已验证”和“待定”而不是 True 和 False,但它可以工作:

=NOT(ISERROR(MATCH(A2:H2;$L$1:$N$1;-1)))

其中L1:N1是一个数组,其中包含我的 3 个查找值:Accepted、Today 和 N/A,它作为数组公式输入,使用Ctrl + Shift + Enter在此数据集上测试:

数据集测试公式与预期结果的比较

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM