合并单元格

本节讲的“合并单元格”,与合并(拼接)单元格内的字符串有区别。具体请搜索“拼接”查询。

一、合并单元格自动填充序号
注:需填充序号的合并单元格,须是空值,假设A列有合并的单元格需填充序号
1、鼠标选择需填充的区域(自上向下选择);
2、直接在地址栏输入公式(注意,区域第一个单元格要绝对引用,“$”):
=MAX($A$1:A1)+1 或 COUNTA($A$1:A1)
注意:假设需要从A6(A6是合并后的单元格)开始排序,公式应是:
=MAX($A$5:A5)+1 ,
如果A3:A5也是合并单元格,公式也是:
=MAX($A$5:A5)+1 
公式:如果用COUNTA(A$5:A5) 这个公式从A6开始排序,必须保证A5单元格未合并。
3、组合键 Ctrl + Enter 任务完成;

二、合并单元格计数、求和
1、
计数公式:
=COUNTA(B2:B$22)-SUM(A3:A$22),然后组合键CTRL+ENTER

2、求和公式:
=SUM(C2:C$22)-SUM(A3:A$22),然后组合键CTRL+ENTER

注意以上两个公式:最后一个单元格需“$”固定,且第2组SUM函数的区域是从A3开始。

3、我之前曾经用辅助列完成过合并单元格计数、求和,虽然较复杂,但可以去思考:我插入两列,辅助两个公式,假设D列和E列是辅助列:
(1)D列:我要取出合并单元格中非空值的行号,公式:
=IF(ISBLANK(A2),"",ROW(A2))
(2)E列:用下一个非空值(行号)减去 本身的行号,即等于合并单元格包括的行数,公式【注意:最末一个单元格,不只要额外添加,还需用“$”符固定】:
=IFERROR(SMALL(D2:D$23,2)-D2,"")
(3)顺着这个思路,也可以在D列,执行公式:
=IF(ISBLANK(A2),"",ROWS(A2:A$23)),然后在E列
=IFERROR(G2-LARGE(G2:G$23,2),"")
(4)假设在F列求和,公式:
=IF(ISBLANK(A2),"",SUM(OFFSET(A2,0,2,E2,1)))
因最后一行是空,会报错,所以在前面加个IFERROR函数:
=IFERROR(IF(ISBLANK(A2),"",SUM(OFFSET(A2,0,2,E2,1))),"")
下图中F列的效果,需用格式刷,从A列刷到F列。

跨列合并单元格的思路差不多,把ROW改COLUMN就可以了。
另:合并单元格会影响有些公式,如LOOKUP的过程及结果。因有的人就喜欢那种感觉,所以,如果是列列间的合并,建议尝试“跨列居中”(开始 - 格式 - 设置单元格格式 - 对齐 - 水平对齐 - 跨列居中)