如下图:如何将同一个商品名称其对应的颜色放到一个单元格内,并且各颜色之间用顿号(、)或斜杠(/)分开呢? 接下来我们一起来看看用函数公式是怎么解决的。 首先提取不重复的商品名称,可以通过数据-删除重复项来完成,也可以通过函数公式来完成: 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易学宝 |
|