首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 其他相关 >

Excel中两列比较的一个典型范例

2012-10-07 
Excel中两列比较的一个典型实例先看一个表: ABCDE1去年名单今年名单在职老员工离职老员工新任员工2张一王

Excel中两列比较的一个典型实例
先看一个表:

ABCDE
1去年名单今年名单在职老员工离职老员工新任员工
2张一王一
3张二张一
4张三王三
5张四李四
6李一张三
7李二李二
8李三陈帅哥
9李四张美女
10田大娘杨大哥
11吴学田大娘
12 吴学
假如这个表是某公司去年和今年的员工名单,现在要求在职老员工名单,也就是在A列也在B列的员工,同样离职老员工是指在A列不在B列的员工,新任员工指在B列不在A列的员工。如果用A表示去年员工的集合,B表示今年员工的集合,则用数学语言表示是:

在职老员工=AB    (AB表示A交B)
离职老员工=A - B 
新任员工=B - A

在Excel里,这里要用到两个函数,一个是if(),另一个是countif(),具体每个函数的使用方法这里不多说,请查看Excel帮助。这里countif()的作用是测试某一个元素(成员)是不是在某集合(列),如果其值大于0,在说明该元素属于某集合,否则不属于。if()的作用是根据countif()测试的结果来赋予某一单元格的值。具体公式如下:

在单元格C2输入:=IF(COUNTIF(B$2:B$12,A2),A2,"")  
说明:为了方便拖拉填充,需要把范围固定,即在数字前面加一个“$”符号,如:B$2:B$12。B$2:B$12表示一个范围,相当于集合B。COUNTIF(B$2:B$12,A2)的意思就是在范围B$2:B$12里统计单元格A2的值出现的次数,这样语句IF(COUNTIF(B$2:B$12,A2),A2,"")就表示,如果统计次数大于0则单元格C2的值等于A2,否则就等于""(即空)。以下公式类似,不再赘述。

在单元格D2输入:=IF(COUNTIF(B$2:B$12,A2),"",A2)
在单元格E2输入:=IF(COUNTIF(A$2:A$11,B2),"",B2)

注意,其中C、D两列只要填充到11就行了,因为这两列都是拿A列的元素进行测试,而A列的元素只到A11。同理E列就要填充到12。另外还要注意范围的选取,不要搞错了。

输完以上公式并且填充完,结果如下:

 ABCDE
1去年名单今年名单在职老员工离职老员工新任员工
2张一王一张一 王一
3张二张一 张二 
4张三王三张三 王三
5张四李四 张四 
6李一张三 李一 
7李二李二李二  
8李三陈帅哥 李三陈帅哥
9李四张美女李四 张美女
10田大娘杨大哥田大娘 杨大哥
11吴学田大娘吴学  
12 吴学   

需要强调的是,为了一般化,这里选取了A、B两列的名单个数是不一样的,排列顺序也不一样。

热点排行