VLOOKUP:Return 单个 VLOOKUP 和 SUM 结果中的多个 INDEX 值
VLOOKUP: Return multiple INDEX values in single VLOOKUP and SUM results
我根据单元格引用过滤列的动态范围作为 VLOOKUP 中的索引。在这种情况下,我会得到三列。然后我选择其中之一(例如 INDEX 1)。
=VLOOKUP($A2, Sheet1!$A:$W, index(filter(arrayformula(column(Sheet1!$A:)),Sheet1!$A:=E),,1),false)
因为我还必须 return INDEX 2 和 INDEX 3 并在之后对它们求和,所以我几乎每个 INDEX 重复这个公式(在这个例子中 3 次)
=VLOOKUP($A2, Sheet1!$A:$W, index(filter(arrayformula(column(Sheet1!$A:)),Sheet1!$A:=E),,1),false) +
=VLOOKUP($A2, Sheet1!$A:$W, index(filter(arrayformula(column(Sheet1!$A:)),Sheet1!$A:=E),,2),false) +
=VLOOKUP($A2, Sheet1!$A:$W, index(filter(arrayformula(column(Sheet1!$A:)),Sheet1!$A:=E),,3),false)
我想知道是否有一种方法可以通过一个公式获得 INDEX 1-3 的总和。这里有一张图片可以帮助理解我的设置:
我正在寻找以 GroupX 为参考的每个列,return Index1 和 Index2,然后对值求和。我怎样才能做到这一点而不重复公式 3 次并手动输入 INDEX。
去掉INDEX
,只用FILTER
,就会return多列满足条件。此外,您可以在此处删除 IFERROR
,因为只有有效的列被 return 编辑,因此应该始终有一个值,不再有 #REF
值。
公式 E2:
=divide(
sum(arrayformula(switch(VLOOKUP($A2, Sheet1!$A:$J, filter(column(Sheet1!$A:),Sheet1!$A:=E),false),"done",1,"wip",0.5,"open",0)))
,countif(Sheet1!$A:,E))
公式 E7:
=divide(
sum(arrayformula(switch(VLOOKUP($A7, Sheet2!$A:$J, filter(column(Sheet2!$A:),Sheet2!$A:=E),false),"done",1,"wip",0.5,"open",0)))
,countif(Sheet2!$A:,E))
输出:
注:
- ID以B结尾,我用的是
Sheet2
,直接复制粘贴到第7-11行
- 请原谅背景颜色,它的格式不正确。
我根据单元格引用过滤列的动态范围作为 VLOOKUP 中的索引。在这种情况下,我会得到三列。然后我选择其中之一(例如 INDEX 1)。
=VLOOKUP($A2, Sheet1!$A:$W, index(filter(arrayformula(column(Sheet1!$A:)),Sheet1!$A:=E),,1),false)
因为我还必须 return INDEX 2 和 INDEX 3 并在之后对它们求和,所以我几乎每个 INDEX 重复这个公式(在这个例子中 3 次)
=VLOOKUP($A2, Sheet1!$A:$W, index(filter(arrayformula(column(Sheet1!$A:)),Sheet1!$A:=E),,1),false) +
=VLOOKUP($A2, Sheet1!$A:$W, index(filter(arrayformula(column(Sheet1!$A:)),Sheet1!$A:=E),,2),false) +
=VLOOKUP($A2, Sheet1!$A:$W, index(filter(arrayformula(column(Sheet1!$A:)),Sheet1!$A:=E),,3),false)
我想知道是否有一种方法可以通过一个公式获得 INDEX 1-3 的总和。这里有一张图片可以帮助理解我的设置:
我正在寻找以 GroupX 为参考的每个列,return Index1 和 Index2,然后对值求和。我怎样才能做到这一点而不重复公式 3 次并手动输入 INDEX。
去掉INDEX
,只用FILTER
,就会return多列满足条件。此外,您可以在此处删除 IFERROR
,因为只有有效的列被 return 编辑,因此应该始终有一个值,不再有 #REF
值。
公式 E2:
=divide(
sum(arrayformula(switch(VLOOKUP($A2, Sheet1!$A:$J, filter(column(Sheet1!$A:),Sheet1!$A:=E),false),"done",1,"wip",0.5,"open",0)))
,countif(Sheet1!$A:,E))
公式 E7:
=divide(
sum(arrayformula(switch(VLOOKUP($A7, Sheet2!$A:$J, filter(column(Sheet2!$A:),Sheet2!$A:=E),false),"done",1,"wip",0.5,"open",0)))
,countif(Sheet2!$A:,E))
输出:
注:
- ID以B结尾,我用的是
Sheet2
,直接复制粘贴到第7-11行 - 请原谅背景颜色,它的格式不正确。