我已经搜索过,但没有找到一个例子,可以在列表中找到前三个出现的数字。大多数代码用于文本,最高评分或前三大值。
我有一份订单清单,其中包含年内发生的零件编号和价格。
-A --------- ---------乙Ç------- ------- dÈ
60470 $ 58
60470 $ 58
89038 $ 60
31859 $ 37
60470 $ 58
29079 $ 78
35568 $ 40
82677 $ 92
69172 $ 37
31859 $ 37
89038 $ 60
31859 $ 37
31859 $ 37
60470 $ 58
31859 $ 37
60470 $ 58
31859 $ 37
A列有部件号,B列有价格。在D栏中,我想列出A列中前3个最常出现的部件号,然后列E列出所有出现时的总和。
在上面的示例中,D列和E列分别显示以下内容:
31859 $ 222.00
60470 $ 290.00
89038 $ 120.00
我真的无法排序或添加"帮助"列,所以我试图使用数组公式来实现这一点。
答案 0 :(得分:1)
在public ViewHolder(View v) {
super(v);
// Some logic here to find children
v.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Get the adapter here, loop all visible children, and change visibility?
// Following line will do for clicked item only:
tvwind.setVisibility(tvwind.getVisibility()==View.VISIBLE?View.GONE:View.VISIBLE);
}
});
}
,数组公式** :
D1
在=INDEX(A$1:A$17,MATCH(LARGE(IF(FREQUENCY(A$1:A$17,A$1:A$17),FREQUENCY(A$1:A$17,A$1:A$17)+ROW(A$1:A$17)/10^6),ROWS($1:1)),FREQUENCY(A$1:A$17,A$1:A$17)+ROW(A$1:A$17)/10^6,0))
:
E1
此致
答案 1 :(得分:0)
要获取部件号,请使用
=INDEX($A$1:$A$17,MATCH(LARGE(COUNTIF($A$1:$A$17,$A$1:$A$17),ROWS($1:1)),COUNTIF($A$1:$A$17,$A$1:$A$17),0))
这是一个数组公式,因此在公式栏中输入时必须使用CTRL + SHIFT + ENTER,而不是按ENTER键
获得部件号后,一个简单的SUMIF
即可获得总数