改进计算时间以显示研究的多个不同结果

Improve calculating time for show several different result from a research

此 sheet 的目的是显示 A1:B11 范围 sheet 范围内的每个结果(即使不同),并显示准确的城市 A1:B11在 D1.

这是我在 D2 中的公式:

=SIERREUR(INDEX(B:B;PETITE.VALEUR(SI(ESTNUM(EQUIV(A:A;$D;0));EQUIV(LIGNE(A:A);LIGNE(A:A));"");LIGNES(($A:A1))));"")

效果很好,但是,当我将这个公式扩展到大量数据时,我的工作簿变得非常非常慢(慢到我无法向 sheet 甚至 select 移动细胞)。 我需要将计算方法设置为“手动”以更改 sheet.

任何获得相同结果但具有不同 method/way 的想法?

如果您拥有最新版本,具有 FILTER 功能,(并且您的 city/rank 信息在 Table 中)你可以使用:

=FILTER(Table7[rank],Table7[City]=$D)

要升序排序,您可以使用新的 SORT 函数:

=SORT(FILTER(Table7[rank],Table7[City]=$D))

对于那些使用旧版本 Excel,但具有 AGGREGATE 功能(我认为出现在 2010 年(可能是 2007 年))的人,您可以使用

Unsorted:  =IFERROR(INDEX(Table7[rank],AGGREGATE(15,6,1/(Table7[City]=$D)*(ROW(Table7)-ROW(Table1[#Headers])),ROWS(:1))),"")

Sorted:  =IFERROR(AGGREGATE(15,6,1/(Table7[City]=$D)*Table7[rank],ROWS(:1)),"")