excel - 是否可以通过 OR 语句使用具有多个条件的 INDEX 和 MATCH?
问题描述
我正在尝试在 match() 函数的第二个条件上使用多个范围条件和 OR() 选项。如果我要使用第三个标准,它将是包容性的并跳过我试图定位的值。
目前有这个:
=CELL("row",INDEX($D$69:$I$215,MATCH(1,(E30=E69:E215)*("Buy"=G69:G215),0),2))
**有没有办法让它工作?**
=MATCH(1,(E30=INDIRECT("E" & C30 & ":E" & C27)* **OR( ("Buy"=INDIRECT("G"&C30&":G"&C27)),("Reinvestment"=INDIRECT("G"&C30&":G"&C27))**)),0)
解决方案
一、避免使用,CELL
因为它易挥发。你可以简单地做:
=MATCH(1,(E30=E69:E215)*("Buy"=G69:G215),0)+MIN(ROW(E69:E215))-1
二、OR
在数组公式中做一个可以使用+
和替换INDIRECT,它也可以用INDEX volatile
=MATCH(1,(E30=INDEX(E:E,C30):INDEX(E:E,C27))*(("Buy"=INDEX(G:G,C30):INDEX(G:G,C27))+("Reinvestment"=INDEX(G:G,C30):INDEX(G:G,C27))),0)+C30-1
根据 One 的版本,这可能需要在退出编辑模式时使用 Ctrl-Shift-Enter 而不是 Enter 来确认。
也可以使用 AGGREGATE:
=AGGREGATE(15,7,ROW(INDEX(E:E,C30):INDEX(E:E,C27))/((E30=INDEX(E:E,C30):INDEX(E:E,C27))*(("Buy"=INDEX(G:G,C30):INDEX(G:G,C27))+("Reinvestment"=INDEX(G:G,C30):INDEX(G:G,C27)))),1)
不需要 CSE 条目。
推荐阅读
- mysql - 需要从 hive 中的给定时间戳中减去几个小时
- javascript - 滚动后提示尺寸太大
- vue.js - 使用带有 prerender-spa-plugin 的 vue-head 导致标题和元标记在 netlify 上显示两次
- python - Cython 是否将导入的模块编译为二进制文件的一部分?
- hyperledger-fabric - 如何在 Hyperledger Fabric 中部署我自己的系统链代码?
- javascript - 在反应 js 中未定义 DateTimeField 中的错误
- php - 如何从 php 将多个图像从数组上传到本地服务器文件夹
- report - wkhtmltopdf 失败(错误代码:-8)。消息:b" odoo 12
- python - Django-ValueError [无法创建用户,因为数据未验证]
- angular - 使用 angular-oauth2-oidc 打开其他选项卡时如何保持登录状态?