在计算中使用 Excel 数组函数的结果
Using result of an Excel array function in a calculation
我正在尝试从先前值的最后一个实例开始计算 Excel 中特定值的实例。
假设一个垂直列表从单元格 A1 开始:1, 2, 3, 4, 5, 4, 5, 3, 4, 5, 2, 3, 4, 3, 4, 2, 3, 4, 5
我可以在 {=MAX(ROW(:14)*(A:A14=A14-1))
的 B14(A14 值:3)中使用数组函数来给我“2”(第 10 行)的最后一个实例的行号。
然后我可以在 C15 中有一个函数 =COUNTIF(OFFSET(A14,0,0,B14-ROW(A14),1):A14,A14)
,它将计算自最后一个 2 以来 3 的实例。
问题是:如何将该数组函数直接集成到最终公式中,以免中间计算浪费一列?
编辑
数字列表表示缩进级别,因此最终结果将是这些计算的复合体,并使用不同的偏移量检查来提供节编号:1; 1.1; 1.1.1、1.2、1.2.1、1.2.2 等
我想要一个可以计算整个深度级别的函数,而不必浪费几列来确定在前一个缩进层之上定义了多少行。
在单元格 B14 中试试这个公式数组:
{=COUNTIF(OFFSET($A14,0,0,
MAX(ROW(:14)*($A:$A14=$A14-1))
-ROW($A14),1):$A14,$A14)}
我正在尝试从先前值的最后一个实例开始计算 Excel 中特定值的实例。
假设一个垂直列表从单元格 A1 开始:1, 2, 3, 4, 5, 4, 5, 3, 4, 5, 2, 3, 4, 3, 4, 2, 3, 4, 5
我可以在 {=MAX(ROW(:14)*(A:A14=A14-1))
的 B14(A14 值:3)中使用数组函数来给我“2”(第 10 行)的最后一个实例的行号。
然后我可以在 C15 中有一个函数 =COUNTIF(OFFSET(A14,0,0,B14-ROW(A14),1):A14,A14)
,它将计算自最后一个 2 以来 3 的实例。
问题是:如何将该数组函数直接集成到最终公式中,以免中间计算浪费一列?
编辑
数字列表表示缩进级别,因此最终结果将是这些计算的复合体,并使用不同的偏移量检查来提供节编号:1; 1.1; 1.1.1、1.2、1.2.1、1.2.2 等
我想要一个可以计算整个深度级别的函数,而不必浪费几列来确定在前一个缩进层之上定义了多少行。
在单元格 B14 中试试这个公式数组:
{=COUNTIF(OFFSET($A14,0,0,
MAX(ROW(:14)*($A:$A14=$A14-1))
-ROW($A14),1):$A14,$A14)}