Excel - 如何在引用位于一列而不是静态单元格位置的情况下使用 OFFSET 函数?
Excel - How to use the OFFSET function where the reference is in one column but not in a static cell location?
假设我有这样的数据:
我想使用 A 列中以绿色突出显示的值“Production”查找以黄色突出显示的日期数据。但是,随着 table 从外部来源更新,location 所在的单元格可能会发生变化(列不会发生变化)。我如何使用 OFFSET 函数来获取该日期数据?或者有更好的功能可以使用吗?
下面的公式假定您的数据不会超出 A1:AZ1000 范围:
=INDEX(A1:AZ1000,MATCH("production",A1:A1000,0)+1,AGGREGATE(15,6,POWER(10,LOG10((B2:AZ2>0)*COLUMN(B2:AZ2))),1))
(对第 2 行的引用是因为屏幕截图中的数据从该行开始,因此它将第一个数字列标识为 B2:AZ2
中包含值 > 0 的第一列)
所做的假设是您想要第一个数字列中的值,该列位于找到 production 的下一行(就像,如果您只是想要最后一行第一列数字数据然后 production 的位置将是无关紧要的)。
(如果您的 Excel 版本早于 2021/Office 365,则必须将公式输入为 array formula)
=OFFSET(A1,MATCH("production",$A:$A,0),4,1,1)
匹配找到“production”行
Offset 使用匹配作为 A1 的第二个参数(行),然后超过 4 列并检索 1x1 单元格。
假设我有这样的数据:
我想使用 A 列中以绿色突出显示的值“Production”查找以黄色突出显示的日期数据。但是,随着 table 从外部来源更新,location 所在的单元格可能会发生变化(列不会发生变化)。我如何使用 OFFSET 函数来获取该日期数据?或者有更好的功能可以使用吗?
下面的公式假定您的数据不会超出 A1:AZ1000 范围:
=INDEX(A1:AZ1000,MATCH("production",A1:A1000,0)+1,AGGREGATE(15,6,POWER(10,LOG10((B2:AZ2>0)*COLUMN(B2:AZ2))),1))
(对第 2 行的引用是因为屏幕截图中的数据从该行开始,因此它将第一个数字列标识为 B2:AZ2
中包含值 > 0 的第一列)
所做的假设是您想要第一个数字列中的值,该列位于找到 production 的下一行(就像,如果您只是想要最后一行第一列数字数据然后 production 的位置将是无关紧要的)。
(如果您的 Excel 版本早于 2021/Office 365,则必须将公式输入为 array formula)
=OFFSET(A1,MATCH("production",$A:$A,0),4,1,1)
匹配找到“production”行 Offset 使用匹配作为 A1 的第二个参数(行),然后超过 4 列并检索 1x1 单元格。