我有一张表格,其中一列显示月份,下一列显示该月的销售额。有些月份没有销售额。我想使用公式创建一个新表格,这样我只能看到有销售额的月份及其销售额。例如;
四月 - 500
五月 - 500
六月 -
七月 -
八月 - 500
等变成
四月 - 500
五月 - 500
八月 - 500
答案1
答案2
答案3
您需要一个数组(CSE)公式:
单元格中的公式
Q36
:{=IFERROR(INDEX(N$36:N$43,SMALL(IF($O$36:$O$43<>"",ROW($O$36:$O$43)-ROW($O$36)+1),ROWS(Q$35:Q35))),"")}
完成配方Ctrl+Shift+Enter&填充。
:编辑:
{=SMALL(IF(O$36:O$43<>"",ROW(O$36:O$43)-ROW(O$36)+1),ROWS(Q$35:Q35))}
- 以上公式,如果是数组公式,则返回非空白值的行数
O36 to O43
,否则只获取第一个值的行数1
。
检查一下,解释一下它是如何工作的。
单元格中的数组(CSE)公式
V36
:{=SMALL(IF(O$36:O$43<>"",ROW(O$36:O$43)-ROW(O$36)+1),ROWS(V$35:V35))}
单元格中的公式
W36
:=INDEX(N$36:N$43,$V36)
获取与非空白单元格匹配的正确月份名称,从中
INDEX
获取顺序V36 to V40
。
如果你把它填右然后填下,你会得到,
IFERROR
用空白替换#NUM错误。
因此,INDEX 和 SMALL 的正确组合可以按所需顺序获取月份名称以及相关值。
- 根据需要调整上述所有公式中的单元格引用。