比如说6,这个重复值, 就在上面1234列的6右边单元格返回【a,c,e,h】
如果是16版及以上版本可以用textjoin,下面这种方法是针对非16及以上的版本
C2单元格用数组公式,并且应用扩展到K11单元格
=IF(OR(OFFSET($B$16:$G$16,SUM(COLUMN()-3),0,1,6)=OFFSET($A$1,SUM(ROW()-1),0,1,1)),OFFSET($A$16,SUM(COLUMN()-3),0,1,1),"")
B2单元格使用公式,下拉填充到B11单元格。
=C2&D2&E2&F2&G2&H2&I2&J2&K2
老哥你的column为什么要-3和row为什么要-1?因为我的要工作的具体表格和案例行列位置不一样
a,c,e,h,老哥,求指教!!1
追答如图
C3输入
=TEXTJOIN(",",,IF(MMULT(N($D$15:$I$23=$A3),ROW($1:$6)^0),$C$15:$C$23,""))
部分16版及以上版本才能用这个函数,textjoin合并在一个单元格,没有这个函数只能显示在多个单元格
老哥佩服,能解释一下这段函数吗。。。悬赏都给你了。。。
追答回家再说,下班了。
追问老哥16用不了textjoin,能不合并吗?或者16怎么才能用textjoin?我在网上找了个加载宏也用不了
追答16版本有很多,极少版本有这个函数,
函数与加载宏没关系,宏是宏,函数是函数,
宏可以说是代码,可以认为是编程
没这个函数,可以这样放在多个单元格,C3右拉下拉
=IFERROR(INDEX($C:$C,SMALL(IF(MMULT(N($D$15:$I$23=$A3),ROW($1:$6)),ROW($C$15:$C$23)),COLUMN(A1))),"")
关键,数组公式,三键输入,出现大括号代表输入正确
然后手动&符号连接,手动“”&“”符号可考虑concatenate,只是没“”,“”隔开了
代码能实现,懒得写,写了估计你也不会用,还要调整宏安全性,没涉及过VBA的不建议。
老哥能不能解释一下$C:$C和$1:$6代表什么因为我的要工作的表格和案例按行列位置不一样
追答MMULT 这个函数 要求第一个数组的列要和第二个数组的行对应,具体百度
ROW($1:$6)目的只是为了生成一个6行的数组,本身与行没关系
$C:$C,这个比较简单,就是用index在C列取值
综合来说,这公式并不简单
非要理解的话,太难了,得一定函数基础才行,实在不行,文件发给我,给你改。
怎么说
追答用代码一个个单元格的循环查找,然后合并。
追问具体公式、函数呢