索引检查找到内容的上方 1 行和上方 2 行

问题描述 投票:0回答:1
我正在谷歌表格中制作日历并绘制不同的运输场景。我希望一个单元格通过在范围内查找“盒子交付”来显示一周中的某一天交付的东西,然后检查上面的 1 或 2 行以了解一周中的某一天(因为它可以在任何一个中)。我有一个公式可以检查上面的一行,但它不适用于上面的两行。

=IFERROR( INDEX( C11:I11, 1, MATCH(TRUE, ISNUMBER(SEARCH("Box delivery", FLATTEN(C12:I15))), 0) ), IFERROR( INDEX( C11:I11, 1, MATCH(TRUE, ISNUMBER(SEARCH("Box delivery", FLATTEN(C11:I14)))), 0 ), "" ) )
这也可以从上面 1 行(而不是 2 行)中提取星期几

=IFERROR( INDEX( C11:I11, 1, MATCH(TRUE, ISNUMBER(SEARCH("Box delivery", FLATTEN(C12:I15))), 0) ), IFERROR( INDEX( C11:I11, 1, MATCH(TRUE, ISNUMBER(SEARCH("Box delivery", FLATTEN(C12:I15))), 0) - 1 ), INDEX( C11:I11, 1, MATCH(TRUE, ISNUMBER(SEARCH("Box delivery", FLATTEN(C12:I15))), 0) - 2 ) ) )
这是两个日历的示例图像。在顶部,输出应为星期四,即“Box Delivery”上方第 1 行列出的一周中的某一天。在底部,输出应为星期三,即一周中的哪一天,列在“盒子交付”上方 2 行。

enter image description here

有人可以告诉我如何让公式显示星期几,无论它是在“盒子交付”上方的一行还是两行?谢谢!

google-sheets
1个回答
0
投票
在单元格 B2 中使用此公式:

=ARRAYFORMULA(TOCOL(IF(map(B4:H6,Lambda(value,if(regexmatch(value,"Box Delivery"),1,)))="",,B3:H3),1))


每个框中的所有值都必须是文本。


场景#1

one


场景#2

two

h/t @z..

如何逆透视表并获取列标题-行标题范围

© www.soinside.com 2019 - 2024. All rights reserved.