excel - 带有行标签的多维查找(2 行和 1 列)
问题描述
我需要创建一个函数,该函数将Sheet2!G25:P25
根据三个条件填充单元格:项目类型、条件类型和日期。问题是 中的标准Sheet 1
没有排列好以便方便地使用 aVLOOKUP
或INDEX
MATCH
. 我知道我应该列出不起作用的公式,但老实说,我什至无法接近。我一直主要研究SUMPRODUCT
诸如此类的变体
=SUMPRODUCT((Sheet1!A3:A19=Sheet2!A25)*(Sheet1!D3:D19=Sheet2!B25)*(Sheet1!G2:P2=Sheet2!G23)*Sheet1!G3:P19)
但这显然行不通,因为项目类型和标准类型与我需要的数据不在同一行。我一直在尝试的解决方法是在项目类型和标准类型数组OFFSET
中找到单元格的位置,但函数内的限制让我退缩了。例如,即使函数拉取单元格 location ,函数的引用部分也不能是函数。这样做的目的是诱使函数认为 2 行标准在同一行上。你们在这方面是天才,所以我确定我错过了一些东西。SUMPRODUCT
OFFSET
OFFSET
(OFFSET(CELL("address",INDEX MATCH),0,0)
SUMPRODUCT
=SUMPRODUCT((Sheet1!A3:A19=Sheet2!A25)*(Sheet1!D3:D19=Sheet2!B25)*(Sheet1!G2:P2=Sheet2!G23)*Sheet1!G3:P19)
解决方案
好吧,以下内容基于您的示例对我有用。这里的条件是你的项目和条件之间的行分隔总是相隔 4 行
表 2 上的公式是
{=INDEX(Sheet1!$A$1:$U$19,MATCH(1,(Sheet1!$A$1:$A$15=$A$3)*(Sheet1!$D$4:$D$18=$B$3),0)+1,MATCH(H1,Sheet1!$A$1:$U$1,0))}
这是一个数组公式,使用 Ctrl+Shift+Enter 输入
在 sheet1 上,如果数据与图片上的数据相同,则表示第一个日期在 Sheet 1 的 H1 中。在 Sheet 2 上输入的第一个公式在单元格 H3 中
我使用的“技巧”是简单地偏移第二个搜索数组:
- 项目使用 A$1:$A$15
- 标准使用 $D$4:$D$18
推荐阅读
- angular - Angular post 方法没有收到来自 Spring Boot 应用程序的响应
- python - 将 YAML 转换为 JSON 时出错:yaml:第 3 行:未找到预期的密钥
- reactjs - React:如何重构它以防止整个重新渲染并将其封装到重要的组件中?
- elasticsearch - 数据操作的 API 命名约定
- django - 如何在 HTML 上显示作为类属性的对象列表 (ManyToMany)
- keep-alive - unix 域套接字(套接字系列 AF_UNIX)是否支持套接字选项 SO_KEEPALIVE?
- c# - 如何在用户 OnSignedIn 事件的启动中创建 Redis 缓存?
- c# - 执行 Yield return 会停止 Unity 中的协程
- ios - 催化剂 textview 插入符号颜色
- json - 如何使用存储在 FutureBuilder 的 snapshot.data(无类)中的 JSON 数据?