改进计算时间以显示研究的多个不同结果
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)),"")
此 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)),"")