excel - 如何让 IF(AND) 在多个条件下工作?
问题描述
我正在尝试制作一个页面计算器,它根据输入到三个下拉单元格中的内容返回规定的值。
下拉单元格是:
- 列(选项为 1 或 2);
- 修剪尺寸(选项范围);
- 文本设计(选项范围)。
我似乎无法掌握 IF 函数的窍门。这将返回我想要的:
=IF(AND(B7=Sheet1!E2,B8=Sheet1!C2,B9=Sheet1!A2),467,FALSE)
但是现在我需要添加大量列、修剪大小和文本设计的其他组合,其中的选择将决定返回哪个数字。一次添加具有一个变体的另一行似乎不起作用,例如
=IF(AND(B7=Sheet1!E2,B8=Sheet1!C2,B9=Sheet1!A2),467,FALSE), IF(AND(B7=Sheet1!E2,B8=**Sheet1!C3**,B9=Sheet1!A2),570,FALSE)
我只是得到#VALUE!
有什么建议吗?
解决方案
您只需要使用正确的语法正确嵌套 If 条件 - 括号、逗号需要准确放置。
尝试在它自己的行中添加每个 If 语句:
=IF( AND(B4=Sheet1!E2,B5=Sheet1!C2,B6=Sheet1!A2),
Sheet1!J2,
IF(AND(B4=Sheet1!E2,B5=Sheet1!C3,B6=Sheet1!A2),
Sheet1!J3,
IF(AND(B4=Sheet1!E2,Calculator!B5=Sheet1!C4,Calculator!B6=Sheet1!A2),
Sheet1!E3,
False
)
)
)
)
您也需要正确关闭每个支架
上述过程应该可以帮助您理解公式中的问题,但解决它的更好方法是使用Switch Formula。它使嵌套条件更容易:
=SWITCH(TRUE,
AND(B4=Sheet1!E2,B5=Sheet1!C2,B6=Sheet1!A2), Sheet1!J2,
AND(B4=Sheet1!E2,B5=Sheet1!C3,B6=Sheet1!A2), Sheet1!J3,
AND(B4=Sheet1!E2,Calculator!B5=Sheet1!C4,Calculator!B6=Sheet1!A2), Sheet1!E3,
"If nothing matches - Default"
)
公式 ( ) 中的第一行=SWITCH(TRUE
表示,当找到满足条件的条件时停止搜索TRUE
推荐阅读
- javascript - 分析性能——为什么我的 DOM 在事件处理程序被调用之前就被锁定了?
- c++ - new bool** matrix vs new bool*matrix vs new bool matrix 不同类型的 cpp 初始化混淆?
- javascript - 如何异步加载 UIkit 模式的内容?
- css - 如何使用 SASS 在悬停时显示相邻的兄弟姐妹?
- javascript - 拖动并按住鼠标 Codeceptjs Puppeteer
- python - Pandas VariableOffsetWindowIndexer 似乎做了一些超出预期的事情
- html - 如何同时定义具有固定宽度但自动列宽的表格?
- vault - 监控 Hashicorp vaut 字段
- excel - Excel 在具有隐藏/取消隐藏行宏的特定工作表中选择了错误的单元格
- generics - NestJS 根据上下文在服务中注入存储库