经验直达:
- excel里面包含字符怎么查找匹配
- excel如何自动匹配
一、excel里面包含字符怎么查找匹配
赞几位大神 。
不过大神们给的答案有个潜在前提:就是这些答案对题主手里的省市表要求很高——即省市表里的市必须包含在单位名称里 。
举个例子,如果重庆在省市表里是“重庆市”,则“重庆媛雅医药有限公司”就无法匹配 。
作为powerquery的死忠粉丝,我用powerquery从一个更通用的角度给出了一个解决办法(其实是我不会写Excel公式) 。
操作步骤
- 新建一个Excel文件
- 分别引入包含销售订单的Excel文件和包含省市的Excel文件 。如果两者在同一个Excel的不同sheet里,处理方式都是一样的 。
- 新建一个合并查询,照下图设置:
【excel如何自动匹配 excel里面包含字符怎么查找匹配】请点击输入图片描述
- 然后展开结果即可 。
- 这种方式操作比较简单,但是结果可能不可控,因为涉及要对模糊匹配的阈值进行控制 , 0.2的阈值不知道会不会有意外的匹配结果 。
- 所以另外一种思路是合并之前,分别对city列和销售订单里公司名字所在的列直接取前两个字,反正我们要的不是完整的市名字 , 而是它对应的省 。这样就可以直接合并了 。也可以得出精确的结果 。
- 用powerquery的好处是辛苦一次,终身享受,以后遇到类似的问题直接修改下引用源然后刷新就OK了 。
二、excel如何自动匹配
您好,由于没有文件,我不方便直接给您写公式尝试完成您的需求,请见谅
提供思路如下:
您这个需求是属于比较复杂的多步逻辑,建议先列几个中间项将每一步提取数据完成后合并公式
首先需要提取一个匹配特征串,需要您在空余位置对A列的原始数据进行一个特征提?。?以下以D列为例
- XX线会区分第一个典型信息描述和其他的,建议使用IFERROR和SEARCH函数定位字符串中“线”字的位置 , 如果定位不到(IFERROR的value_if_error),则返回1
- 使用RIGHT函数和步骤1中查找出来的长度,提取后面的剩余字符串
- 可以搜索EXCEL提取第一个汉字的方法 , 诸如网页链接这样的回答会给出公式,对步骤2中的字符串进行提取第一个中文位置
- 类似步骤2,使用RIGHT函数提取步骤3中位置及以后的字符串,将提取出来的字符串放在列D对应行
接下来,对您在E列的原始数据作出基本一样的提取特征串处理:
- 对E列数据使用IFERROR和SEARCH函数定位字符串中“线”字的位置,如果定位不到(IFERROR的value_if_error),则返回1
- 使用RIGHT函数和步骤1中查找出来的长度,提取后面的剩余字符串
- 使用第一个汉字位置定位公式,对步骤2提取出来的字符串进行汉字定位
- 类似步骤2 , 使用RIGHT函数提取步骤3中位置及以后的字符串
- 使用MATCH函数,对步骤4中提取的字符串在D列进行匹配,获得匹配到的行号
- 使用INDEX函数,通过步骤5中提取到的行号返回对应单元格所需要的数据,得出您FGH列所需要的数据