按指定日期重複

熬肥妖發表於2024-07-07

問題:根據D1指定的日期將A2:C8區域進行重複

公式1(姓名)右拉下拉完成
=INDEX(A:A,MOD(ROW(A1)+COUNTA(A:A)-2,COUNTA(A:A)-1)+2)
公式2(日期)下拉完成
=SUBSTITUTE(LEFT(D$1,FIND("-",D$1)-1),".","/")+(ROW(A1)-1)/(COUNTA(A:A)-1)
公式3(全部)動態陣列
=LET(a,COUNTA(A:A)-1,b,SUM(SUBSTITUTE(TEXTSPLIT(D1,"-"),".","-")*{-1,1})+1,HSTACK(CHOOSEROWS(A:C,MOD(SEQUENCE(a*b)+a-1,a)+2),SUBSTITUTE(LEFT(D$1,FIND("-",D$1)-1),".","/")+(SEQUENCE(a*b)-1)/a)) 

CountA(A:A)-1即資料來源中具體資料的行數(不包括標題行)

MOD(ROW(A1)+COUNTA(A:A)-2,COUNTA(A:A)-1)+2部分生成2、3、4、5、6、7、8、2、3、4、5、6、7、8……這樣的迴圈序列數

(ROW(A1)-1)/(COUNTA(A:A)-1)部分生成0、0、0、0、0、0、0、1、1、1、1、1、1、1……這樣的重複序列數(不考慮小數部分)

SUBSTITUTE(LEFT(D$1,FIND("-",D$1)-1),".","/")部分提取起始日期

SUM(SUBSTITUTE(TEXTSPLIT(D1,"-"),".","-")*{-1,1})+1部分計算出兩日期間隔天數

動態陣列公式與前兩個公式思路一致,只是將原公式中Row函式改成Sequence

相關文章