【发布时间】:2015-09-02 07:04:45
【问题描述】:
-
我正在尝试用一组列中的第一个非空条目填充一个单元格(从左到右)。
- 示例表如下。
- 下面给出了所需的工作表输出。
【问题讨论】:
标签: excel excel-formula coalesce
我正在尝试用一组列中的第一个非空条目填充一个单元格(从左到右)。
【问题讨论】:
标签: excel excel-formula coalesce
使用AGGREGATE¹ function 查找第一个非空白单元格并将其传递回INDEX function。
A2中的标准公式是,
=INDEX($B2:$Z2, AGGREGATE(15, 6, COLUMN(A:Z)/SIGN(LEN($B2:$Z2)), 1))
根据需要填写。
¹ AGGREGATE function 是在 Excel 2010 中引入的。它在早期版本中不可用。
您的 数组 公式应该可以像其中任何一个一样工作,
=INDEX(B2:D2,MATCH(1, SIGN(LEN(B2:D2)), 0))
=INDEX(B2:D2,MATCH(0, --ISBLANK(B2:D2), 0))
=INDEX(B2:D2,MATCH(FALSE, ISBLANK(B2:D2), 0))
数组公式需要用 Ctrl+Shift+Enter↵ 完成。一旦正确输入第一个单元格,它们就可以像任何其他公式一样被填充或向下或向右复制。
【讨论】:
Aggregate 函数看起来很有趣 - 感谢您提供信息!