2022-11-07 00:08来源:m.sf1369.com作者:宇宇
C1公式下拉:(自动适应B列有以后有新增人名的情况)
=IF(A1="","",LOOKUP(1,0/FIND(OFFSET(B$1,,,COUNTA(B:B)),A1),OFFSET(B$1,,,COUNTA(B:B))))
如果A列的姓名有可能不存在于B列中,上面公式返回#N/A!错误值,如果遇上这情况想返回空白值,公式改为:(需要EXCEL 2007及以上版本支持)
=IFERROR(LOOKUP(1,0/FIND(OFFSET(B$1,,,COUNTA(B:B)),A1),OFFSET(B$1,,,COUNTA(B:B))),"")
如果用的是EXCEL 2003的,公式要长点:
=IF(SUMPRODUCT(1*ISNUMBER(FIND(OFFSET(B$1,,,COUNTA(B:B)),A1))),LOOKUP(1,0/FIND(OFFSET(B$1,,,COUNTA(B:B)),A1),OFFSET(B$1,,,COUNTA(B:B))),"")
由于题目说的有接近两万条数据,用在C1输入公式下拉两万条记录会慢得累人,现提供一个快速的方法:
在左上角的名称框中输入区域,如C1:C20000 按回车,然后把公式输入到编辑栏,输入完成后不要直接回车,要按CTRL+回车,这样就能快速填充两万条公式了。
=VLOOKUP(查找单元格,查找区域,所在的列,1(或不填))
VLOOKUP模糊匹配1或(不填),精确匹配0
统计公式:COUNTIF,可以实现模糊统计。 COUNTIF 是一个统计函数,用于统计满足某个条件的单元格的数量;例如,统计特定城市在客户列表中出现的次数。
1)使用通配符星号“*”实现模糊搜索 =COUNTIF(A2:A5,"云*") 统计单元格 A2 到 A5 中包含任何文本的单元格的数量。通配符星号 (*) 用于匹配任意字符。
2)使用通配符问号(?) 实现模糊搜索 =COUNTIF(A2:A5,"云?????") 统计单元格 A2 到 A5 中正好为 7 个字符且以“云”为首的单元格的数量。通配符问号 (?) 用于匹配单个字符。
假如F2有文字"人资综合一级助理专责" 在G2输入公式=IF(COUNTIF(F2,"*专责*"),"技术岗位",IF(COUNTIF(F2,"*主任*"),"管理岗位"))
不用vlookup,做模糊匹配。
我说一个功能,真的是能极大的提高工作效率,我看到后,真的是,简直是,天都亮了!
我们知道,vlookup()函数可以做精确匹配,但是很多情况下,要匹配的两列并不是能完全一个字不差,即使最后一个参数是1,那正确率简直是不忍直视。
如果我们一个个改然后完全匹配成功,简直要改死。
所以要祭出这个函数:
非常懵逼有没有。出来后就是这个效果:
两列非常没有规律,但,至少不用再一个个改,差异大的可以直接挑出来。
其实,这也不是我写的,原贴地址:下载那个附件可以。
Excel 数据模糊匹配或相似度匹配函数公式实现及思路解析-Excel函数与公式-ExcelHome技术论坛 -
Excel进行模糊筛选步骤如下:
1、选定数据区 -》数据菜单 -》筛选 -》自动筛选。
2、点击标题行中配件名称列右边的下拉三角形 -》自定义 -》左边选择:包含,右边输入:灯 -》确定。
3、取消筛选:再次点击“配件名称”右边的下拉三角形 -> 选择全部即可完成。
本质区别就是查找方式不同。
近似匹配使用的是二分法(或叫折半法)查找。要求table_array的首列必须按升序排列。
所谓二分法,就是先取数组的中间值与查找值比较,若查找值大于中间值,则在后一半数组中继续按这种方式查。如果查找值小于中间值,就会在前一半里继续找,直到找到一个匹配(或接近,就是帮助里说在找不到精确匹配值情况下,返回小于查找值e 的最大值)值。
所以,如果table_array不是升序排列的话,这个函数总能返回一个值,但这个值不一定正确。
但是,若查找值正好落在二分法的节点上,就有可能返回正确值了。
数字的顺序不用说了,字符的顺序按AscII码顺序,汉字则是按拼音顺序。
精确匹配用的是顺序查找,即从头到尾一个一个比较。找到就找到了,找不到就返回错误(#N/A表示找不到),不会返回近似值。
不用写VBA,使用函数GetMatchingDegree(Text_a, Text_b)比较两个字符串的相似度
需要进行设置,补助如下:
1、首先在电脑桌面打开Excel表格,然后在打开的文件下拉菜单中选择选项的菜单项。
2、然后进入新的界面,这时就会打开Excel的选项窗口,在窗口中点击左侧边栏的高级菜单项。
3、在右侧的窗口中可以找到图形的高质量模式设置项,点击设置项前面的复选框,勾选该设置项。这样以后再打印表格的时候,就会非常清晰了。