1

我希望使用动态数组创建一个辅助单元,这可能吗?

通常我使用这个例子=IF(A4="",C2,A4)中的公式来检查 A 列是否为空白,如果是,则复制上述值,直到 A 列中出现一个新值。

但是,如图所示,当我插入新行时,辅助单元格会损坏。

出于这个原因,我想使用一个动态数组来创建应该能够处理插入或删除行的辅助单元格。

我遇到的问题是,与您可以向下拖动的普通公式不同,动态数组正在查看整个值。如镜像所显示,使用=IF(A4:A40="","-",A4:A40)插入一个连字符。本质上,我希望替换连字符,以便“对于 A4:A40 之间的每个值,检查是否为空白,如果为真,则取上述单元格中的值”。本质上是创建一个动态帮助列。

在此处输入图像描述

4

1 回答 1

1

您可以使用 Match 的不精确形式来查找最后一行不为空的行,然后 Index 从那里获取 A 列中的值:

=INDEX(A4:A40,MATCH(ROW(A4:A40),IF(A4:A40<>"",ROW(A4:A40))))

这类事情在 Google 表格中做了很多。

在此处输入图像描述

如果插入一行,公式将变为

=INDEX(A4:A41,MATCH(ROW(A4:A41),IF(A4:A41<>"",ROW(A4:A41))))

并且仍然可以正常工作。

于 2021-02-20T16:58:01.143 回答