分享

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

 惠阳居士 2017-03-03

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


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

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

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合伙人 友情推荐


图文制作:不会妹。轻松学习技巧,练就职场达人,淘宝搜索关键字:ExcelHome易学宝

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多