之前讲过的这个案例,从单列数据中查找出除了自己以外的所有同类项。这次难度升级了,分类杂乱无章,如果用公式,会不会很难?
如果有 O365 版本,这题就很简单。
案例:下图 1 是各部门的人员名单列表,这次部门名称没有按分类排列,完全是随机的。
请在每一行中横向查找出与该员工同部门的所有同事。
效果如下图 2 所示。
解决方案:1. 在 C2 单元格中输入以下公式:
=TRANSPOSE(FILTER($B$2:$B$12,(A2=$A$2:$A$12)*(B2<>$B$2:$B$12),""))
公式释义:
FILTER 是个 O365 函数,可以根据定义的条件筛选出数据;语法为 FILTER(array,include,[if_empty])
array:要筛选的数组或区域;
include:布尔值数组,高度或宽度必须与 array 相同;
[if_empty]:可选;include 参数中的所有值都为空时返回的值
FILTER($B$2:$B$12,(A2=$A$2:$A$12)*(B2<>$B$2:$B$12),"")
$B$2:$B$12:需要在其中筛选出结果的区域;
(A2=$A$2:$A$12)*(B2<>$B$2:$B$12):条件区域,当同时满足部门相同且姓名不同时,触发筛选条件;
不满足条件则显示空值
TRANSPOSE:将筛选出的结果转置成横向
由于 O365 的动态数组公式特性,直接就能横向查找出所有符合条件的人名。
2. 下拉复制公式。
3. 添加标题、网格线。