if函数+isna函数+vlookup函数实现不同列相同单元格内容排列在同一行

1,首先学习的网址:https://jingyan.baidu.com/album/22a299b5dd0f959e19376a22.html?picindex=1

2,excel 这也许是史上最好最全的VLOOKUP函数教程:https://baijiahao.baidu.com/s?id=1603886666150544094&wfr=spider&for=pc

3,VLOOKUP函数返回错误值的原因和解决方法:http://www.officezhushou.com/excelhansu/4739.html

4,通过上面三个网址的学习和了解,尤其是第二条网址中的图解:

  

 

详细地解释了vlookup函数的各个参数意义。

5,第三条网址展示了vlookup函数的“脆弱性”,但是没有解决我的一个问题:序号+姓名两列作为查找区域导致vlookup函数返回错误信息,经过测试发现只有查找区域不包括序号一列,就能返回正确。

6,理解查找区域的返回列,也就是vlookup函数的第三个参数含义很重要,配合column()函数的使用可以实现同一行多列信息同时匹配——很有用。

7,最终我写出的函数:

  =IF(ISNA(VLOOKUP($B2,$M:$U,COLUMN()-3,0)),"",VLOOKUP($B2,$M:$U,COLUMN()-3,0)) 

8,函数太长,难以阅读,果然有格式化工具:https://antoniothefuture.github.io/ExcelFormulaBeautifier-demo.github.io/

  

 9,对于字面看上去相等,实际不相等的情况:

  可以使用LEN函数比如:=LEN(A55)=LEN(E55)

  在进行vlookup时需要使用例如=TRIM(CLEAN(A55))=TRIM(CLEAN(E55))两个函数进行删除多余不可见不可打印字符

10,使用countif函数实现计数:比如:=COUNTIF(AC:AC,"协议填报")

posted @ 2020-06-17 16:17  西装人  阅读(1826)  评论(0编辑  收藏  举报