如果要对不规则区域的合并单元格进行批量操作,可以将下图中的A列转换为D列,通过分类汇总功能实现。但是,如果你想合并内容以及单元格,如下图所示,你应该怎么做?
比较简单的一个办法是借助公式生成如下图 DE 两列的结果,然后再用《不规则区域合并单元格的批量操作》中描术的方法处理,以达到最终的目的:
E2 单元格里的公式是:
=PHONETIC(OFFSET(B$1,MATCH(D2,A$2:A$10,),,COUNTIF(A:A,D2)))
E 列其他单元格的公式由上述公式向下填充完成。
E2 公式中的 Match 部分(MATCH(D2,A$2:A$10,))用于查找“甲”在整个 A 列中第一次出现的位置。当公式下拉至第五行时,就变成了查找“乙”在整个 A 列中第一次出现的位置。其他类推。
E2 公式中的 CountIf 部分(COUNTIF(A:A,D2))是用于计算 A 列中一共有多少个“甲”。当公式下拉至第五行时,就变成了计算 A 列中一共有多少个“乙”。其他类推。
E2 公式中的 Offset 部分(OFFSET(B$1,MATCH(D2,A$2:A$10,),,COUNTIF(A:A,D2)))就是获取指定单元格区域:即,从 B1 单元格开始,向下偏移至“甲”在 A 列中第一次出现的位置,向右不偏移,生成一个新的单元格区域里的行数等同于 A 列中“甲”的个数,也就是 B2:B4 这个区域。当公式下拉至第五行时,就变成了 B5:B8 这个区域,其他类推。
最后用 Phonetic 合并内容。Phonetic 函数用法特殊,并非像帮助中所描述的那样,详见《用于合并内容的函数》。
在具体操作的过程中,因为合并后的单元格只能看到最左上角的一个,所以 E2 的公式还可以简化成:
=PHONETIC(OFFSET(B2,,,COUNTIF(A:A,D2)))
如下图所示:
效果如何自己爬进单元格试下吧^_^