0 | A | 乙 | C | 德 | 埃 | F | G | H | 我 | J | 钾 | 大号 |
---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | 产品 | 2023-萨尔斯 | 2023-利润 | 2024-萨尔斯 | 2024-保证金 | 2025-销售 | 2025-利润 | 结果 | ||||
2 | 产品 A | 500 | 30% | 150 | 40% | 160 | 5% | 30% | ||||
3 | 产品 B | 200 | 10% | 900 | 60% | 750 | 8% | 10% | ||||
4 | 产品C | 300 | 19% | 400 | 10% | 400 | 60% | 19% | ||||
5 | 产品D | 700 | 50% | 930 | 25% | 50% | ||||||
6 | 产品 E | 800 | 15% | 15% | ||||||||
7 | 产品 F | 430 | 32% | 32% | ||||||||
8 | 产品G | 360 | 45% | 45% |
我Column L
想显示每种产品的第一个边距,即每行中的第二个非空单元格。
到目前为止我已经能够开发出这个公式:
=XLOOKUP(TRUE,ISNUMBER(C2:J2),C2:J2)
它正确地给出了第一笔销售额,即每行中第一个非空单元格。
我需要如何修改它才能显示每行中的第二个非空单元格?
可能有多种选择。以下是使用
BYROW
、FILTER
和 的一种INDEX
:以下是使用
BYROW()
++CHOOSECOLS()
的替代方法TOCOL()
:使用旧函数。在单元格 F1 中向下拖动。如果不存在第二个值,则返回 #REF 错误。
=INDEX(A1:D1,SMALL(IF(ISNUMBER(A1:D1),COLUMN(A1:D1)-COLUMN(A1)+1,1E+200),2))