本守清
2022-02-04T07:39:17+00:00
我已经把表格简化成了如图片中的样子,A列是人名,B列是公司名,D列花名册是人名,需要一个公式在E列按花名册人名返回B列出现次数最多的公司,我试了index,mode,match,countifs啥的组合不出来,网上好像也没人有这个需求,来泥潭问问[img]https://img.nga.178.com/attachments/mon_202202/05/-7Q2p-e9o4KkT1kSa8-7b.png[/img]
我只想到了sql,group by,count,max,orde by搞定……
[quote][pid=586712286,30561925,1]Reply[/pid] Post by [uid=36534015]woshizou[/uid] (2022-02-05 15:51):
我只想到了sql,group by,count,max,orde by搞定……[/quote]excel也有group by,记得是aggregate函数,两次aggregate就出来了
[quote][pid=586712011,30561925,1]Reply[/pid] Post by [uid=21482664]就让我用我的肉身,检验琴操姑娘的真身[/uid] (2022-02-05 15:49):
先数据透视表,然后对数字透视表再处理一下[/quote]主要是原表的人名和公司都好多好多,透视了再找次数也蛮麻烦,想看有没有公式能实现
wps开启筛选,可以看到筛选项目出现的次数[s:ac:blink]
[quote][pid=586714395,30561925,1]Reply[/pid] Post by [uid=61298968]小脑切片[/uid] (2022-02-05 16:04):
wps开启筛选,可以看到筛选项目出现的次数[s:ac:blink][/quote]透视,然后公司名-选定求和排序降序,然后回到原表v一下,按每个人名后面公司,排第一位的带过来移动填入。
原表先加一列辅助列是姓名+公司的单元格,作为表1
然后开一张新表复制原表的3列数据,用重复筛选去掉重复项获得表2
在表2上用sumif统计每个数据的次数
最后在你那张结论表上max+VLOOKUP统计一下即可
[quote][pid=586714793,30561925,1]Reply[/pid] Post by [uid=61298968]小脑切片[/uid] (2022-02-05 16:06):
透视,然后公司名-选定求和排序降序,然后回到原表v一下,按每个人名后面公司,排第一位的带过来移动填入。[/quote]大佬是这样吗,是次数最多的公司在最前面,但是vlookup返回哪一列呢[img]https://img.nga.178.com/attachments/mon_202202/05/-7Q2p-1z1hKbT1kSaz-31.png[/img]
我的思路这样的,先构建个无重复的AB列表分别是名字,公司
然后对这个表增加
C列:每个人,每个公司的公司数计数
D列:每个人,C列最大值
E列:如果C=D,返回B,否则为空
筛选一下去重AE就是你要的结果。
具体公式怎么写就不说了因为很久没用excel了。。
我不太明白。这你把AB列联合去重以后,a列的数量(counif张三)不就等于张三所在的公司数?
e列的公式就是countif(a:a,
d2) a列等于d列的名称。手机打懒得开电脑,公式可能不太对,你再查一下。
如果你AB列本身就是从别的表格拿公式过来的,你可以加一个辅助列,用数组公式做去重(这个方法网上搜一下吧)
[quote][pid=586722947,30561925,1]Reply[/pid] Post by [uid=161078]ashama[/uid] (2022-02-05 16:55):
我不太明白。这你把AB列联合去重以后,a列的数量(counif张三)不就等于张三所在的公司数?
e列的公式就是countif(a:a,
d2) a列等于d列的名称。手机打懒得开电脑,公式可能不太对,你再查一下。
如果你AB列本身就是从别的表格拿公式过来的,你可以加一个辅助列,用数组公式做去重(这个方法网上搜一下吧)[/quote]大哥这样结果是数字呀,想返回个A公司或者B公司这样的名字[s:ac:哭]
[quote][pid=586724277,30561925,1]Reply[/pid] Post by [uid=708243]砍脸[/uid] (2022-02-05 17:03):
大哥这样结果是数字呀,想返回个A公司或者B公司这样的名字[s:ac:哭][/quote]那比如说张三在a公司出现两次公司出现一次,你要返回张三,a公司吗?
那如果这样,原理是一样的,你单独做一个列把AB拼起来。a&“-”b这种
[img]https://img.nga.178.com/attachments/mon_202202/05/-7Q2p-7qt2K1hT3cSj5-ak.png[/img]
用辅助列,并且不考虑相同次数的话,这样最简单了,辅助列里用countifs计算每个公司出现次数
如果不想用辅助列,并且还要考虑相同次数,那就麻烦了[s:ac:呆]