我在 Excel 中有数千行。在六列中,我有百分比值。 例如:[68%][92%][72%][109%][55%][86%]
在这些行中,我想从右侧找到低于或高于 100% 的值的最长连续记录
[68%][92%][72%][109%][55%][86%] 连续 2 次低于 100% -> 低于 2
[62%][101%][43%][65%][78%][111%] 连续 1 次高于 100% -> 高于 1
[89%][108%][55%][114%][111%][120%] 连续 3 次高于 100% -> 高于 3
[---][---][---][---][147%][154%] 连续 2 次高于 100% -> 高于 2 >
[---][---][---][---][---][45%] 连续 1 次低于 100% -> 低于 1< /p>
[116%][58%][89%][66%][33%][74%] 连续 5 次低于 100% -> 低于 5
在“计算 Excel 行中的当前连续性”中没有完全找到我要找的内容 Calculate current streak in Excel row
COUNTIF($KJ2341:$KO2341;"<1") 这给了我低于 1 的总数,但我只从右边寻找连续。
你能帮忙吗?
答案 0 :(得分:1)
我假设您想将任何恰好是 100%
的组与 above
组进行分组。如果情况并非如此,请具体说明您希望如何处理。
这是一种方法,假设第六列总是有定义条目:
请注意,如果您的数据从 A
以外的列开始,则可能需要修改公式
编辑:公式更改为处理部分填充的行
=IF(F1>=1,"Above ","Below ") & IFERROR(COLUMNS($A:$F)- LOOKUP(2,1/IF(F1>=1,A1:F1<1,A1:F1>=1),COLUMN($A:$F)),COUNT(A1:F1))
如果第六列不总是最后一个条目,公式解仍然可能;但如果您有 Office 365,则更容易。
F1 > 1
确定我们是在寻找连续的上图还是下图A1:F1>1
(或 <=1
)根据满足条件创建适当的 {TRUE,FALSE}
数组。1/(the array)
将其更改为 {1,DIV/O}
LOOKUP(2,the_array,array of column_numbers)
返回与我们设置的原始数组中最后一个 TRUE
匹配的列号。IFERROR
来处理连续中只有一个条目的情况。