如果Excel工作表包含序號列,在進(jìn)行自動篩選后,由于某些行被隱藏,序號會變得不連續(xù)。要讓篩選后的序號還是從“1”開始的連續(xù)數(shù)字,可以用下面的公式自動生成序號,假如第一行為標(biāo)題行,序號在第一列。
篩選前,在A2中輸入公式:
=SUBTOTAL(3,$B$1:B1)
或:
=SUBTOTAL(103,$B$1:B2)
然后拖動或雙擊填充柄向下填充公式,可以看到在篩選前后公式都在A列生成從“1”開始的連續(xù)數(shù)字。
說明:SUBTOTAL函數(shù)忽略篩選后所有隱藏的行,其第一個參數(shù)為“3”或“103”,表示用COUNTA函數(shù)進(jìn)行計算,如果為“3”,則僅對篩選隱藏的行適用,如果為“103”,則對用“隱藏行”命令或篩選命令隱藏的行都適用。由于引用了第二列區(qū)域,該公式要求第二列不包含空單元格。
在Excel 2010中,還可以用新增的AGGREGATE函數(shù),其作用類似于SUBTOTAL函數(shù),但其功能更強(qiáng)。A列的公式可作如下修改,以A2單元格為例:
=AGGREGATE(3,5,$A$1:A1)
其第二個參數(shù)為“5”,表示僅忽略隱藏行,而不忽略嵌套AGGREGATE函數(shù)(不同于SUBTOTAL函數(shù)),這樣此處就可以引用同列中公式的結(jié)果,而與其他列無關(guān)。如A6單元格中的公式為:
=AGGREGATE(3,5,$A$1:A5)
雖然A2:A5區(qū)域的公式中包含了AGGREGATE函數(shù),但都沒有被忽略,因而能夠返回正確的結(jié)果。