等級(jí):初學(xué)者
-
積分:0
-
財(cái)富值:0.00
-
身份:普通用戶
Excel中多次重復(fù)一列數(shù)據(jù)的幾個(gè)公式
問(wèn)題:Excel工作表的A列中包含一些數(shù)據(jù),現(xiàn)在要在另一列中將A列的每個(gè)數(shù)據(jù)重復(fù)N次,如圖是在B列中重復(fù)2次的情況,在不使用VBA代碼的情況下,如何快速操作?
答:用下面的幾個(gè)公式都可以快速完成上述任務(wù)。假如A列中包含數(shù)據(jù)的區(qū)域?yàn)锳4:A11,現(xiàn)在要從B3單元格開(kāi)始對(duì)A列中的每個(gè)數(shù)據(jù)重復(fù)5次。在B3單元格中輸入下列公式,然后向下填充:
=OFFSET(A$4,ROUNDUP(ROW(A1)/5,0)-1,0)
公式先用ROW函數(shù)取得一個(gè)數(shù)值,然后用該數(shù)值除以5后用ROUNDUP函數(shù)向上舍入,再減去“1”后用OFFSET函數(shù)返回結(jié)果。例如對(duì)于B14單元格,填充后的公式為:
=OFFSET(A$4,ROUNDUP(ROW(A12)/5,0)-1,0)
ROW(12)返回“12”,ROUNDUP(ROW(A12)/5,0)-1返回“2”,于是上述公式變?yōu)椋?
=OFFSET(A$4,2,0)
返回從A4單元格向下偏移2個(gè)行后的引用,即A6單元格中的內(nèi)容“PowerPoint”。公式中的OFFSET函數(shù)也可以改為INDEX函數(shù),同時(shí)第一個(gè)參數(shù)也要做相應(yīng)的更改。在B3單元格中輸入下面的公式:
=INDEX($A$4:$A$11,ROUNDUP(ROW(A1)/5,0))
道理同上。
還可以使用下面的兩個(gè)公式:
=INDEX($A$4:$A$11,INT(1+ROW(A1)/(5+1/COUNTA($A$4:$A$11))))
或:
=INDIRECT("R"&ROW($A$4)+INT((ROWS($B$1:$B1)-1)/5)&"C"&COLUMN($A$1),0)
如果不是重復(fù)5次,可以將上述公式中用紅色標(biāo)識(shí)的“5”改為相應(yīng)的數(shù)值即可。