淘宝智能热水袋联盟

将符合条件的结果放到一个单元格

Excel之家ExcelHome2018-02-12 22:28:09

如下图:如何将同一个商品名称其对应的颜色放到一个单元格内,并且各颜色之间用顿号(、)或斜杠(/)分开呢? 


接下来我们一起来看看用函数公式是怎么解决的。 

首先提取不重复的商品名称,可以通过数据-删除重复项来完成,也可以通过函数公式来完成

D2=IFERROR(INDEX(A$2:A$13,MATCH(,COUNTIF(D$1:D1,A$2:A$13),)),"")

到这一步了有人觉得这还不简单啊,单条件提取公式一大堆,可是问题来了,该怎么把它放到一个单元格内呢?

下面提供一条公式以作参考: 

E2=MID(SUBSTITUTE(PHONETIC(OFFSET(A$1,MATCH(D2,A$2:A$13,),,COUNTIF(A$2:A$13,D2),2)),D2,"、"),2,99) 

注意,使用公式前需要先对A列商品名称进行排序处理。

公式解析:

先来看看OFFSET(A$1,MATCH(D2,A$2:A$13,),,COUNTIF(A$2:A$13,D2),2)部分,OFFSET(参照单元格,偏移行数,偏移列数,行高,列宽);

 

MATCH(D2,A$2:A$13,)部分找到D2单元格内容(女款针织衫)在区域A2:A13中的位置1;

 

用函数COUNTIF求出在区域A2:A13中有多少个D2单元格内容(女款针织衫),其返回的结果4就是OFFSET的第四参数行高;

 

整个OFFSET部分就是说以A1单元格为基点,向下偏移1行0列,返回行高为4列宽为2的新单元格区域(A2:B5)的引用,OFFSET部分抹黑按F9键得到{"女款针织衫","红色";"女款针织衫","灰色";"女款针织衫","白色";"女款针织衫","黑色"};

 

用函数PHONETIC将OFSSET部分得到的内容连在一起得到"女款针织衫红色女款针织衫灰色女款针织衫白色女款针织衫黑色";

 

用函数SUBSTITUTE替换,把函数PHONETIC部分得到的内容作为SUBSTITUTE第一参数,将D2单元格内容(女款针织衫)替换成顿号(、),得到"、红色、灰色、白色、黑色";第一个顿号是多余的,所以最后用函数MID提取。


“冰冻三尺非一日之寒,滴水石穿非一日之功”,一起加油吧


本文由公众号 爱上Excel合伙人 友情推荐


图文制作:不会妹

易学宝微视频教程,1290个Office技巧精粹,每个技巧都与实际工作密切相关。轻松学习技巧,练就职场达人,淘宝搜索关键字:ExcelHome易学宝

Copyright © 淘宝智能热水袋联盟@2017