【发布时间】:2020-12-21 23:51:35
【问题描述】:
我正在使用 libre office calc,但我希望公式是相同的。我只是想在一行中找到最后一个填充的值并将其显示在其他地方。该行从左到右,可能有空值。
我已经tried other answers 并尝试过RTFM,但我认为我没有找到正确的东西。
【问题讨论】:
标签: libreoffice libreoffice-calc calc
我正在使用 libre office calc,但我希望公式是相同的。我只是想在一行中找到最后一个填充的值并将其显示在其他地方。该行从左到右,可能有空值。
我已经tried other answers 并尝试过RTFM,但我认为我没有找到正确的东西。
【问题讨论】:
标签: libreoffice libreoffice-calc calc
要获取最后填充单元格的列索引,请尝试以下array formula(任意假设您的数据位于行中A1:ZZ1):
=MAX(IF(A1:ZZ1<>"";COLUMN(A1:ZZ1)))
以下数组公式的作用相同,只是将列索引额外转换为列名:
=SUBSTITUTE(ADDRESS(1;MAX(IF(A1:ZZ1<>"";COLUMN(A1:ZZ1)));4);"1";"")
这是以下来源的组合(学分...):
要动态获取第 1 行中最后一个填充单元格的值,只需将第一个公式嵌入到 INDIRECT(ADDRESS(1, <formula>)) 子句中即可。 ADDRESS(1, <formula>) 创建一个单元格引用,INDIRECT() 基于该单元格引用获取值。因此,完整的(第一个)公式如下所示:
=INDIRECT(ADDRESS(1;MAX(IF(A1:ZZ1<>"";COLUMN(A1:ZZ1)))))
完整示例:
【讨论】:
=RESULT1 中使用结果,以在单元格 A3 中显示 Z1 的值?