Tạo một lịch năm không hề khó khăn chút nào nếu bạn dùng Office 365. Mình sẽ hướng dẫn các bạn một cách đơn giản để có được:
- Hai mẫu lịch năm khác nhau.
- Thêm sheet “Holiday” để nhập các ngày nghỉ lễ và sự kiện.
- Lịch tự động định dạng nổi bật ngày cuối tuần và ngày nghỉ.
Link: Onedrive
![]() |
| Tạo lịch năm |
Công thức:
1.=LET(a,DATE(B1,SEQUENCE(12),1),HSTACK(VSTACK("Month",a),REDUCE(TEXT(MOD(SEQUENCE(,37)-1,7)+1,"ddd"),a,LAMBDA(x,v,VSTACK(x,v+SEQUENCE(,37)-WEEKDAY(v,17))))))
2.=LET(a,DROP(REDUCE(0,DATE(2025,SEQUENCE(12),1),LAMBDA(x,v,LET(a,SEQUENCE(6,7)+v- WEEKDAY(v,17),IFNA(HSTACK(x,VSTACK(TEXT(v,"mmm"),TEXT(SEQUENCE(,7),"ddd"), IF(MONTH(v)<>MONTH(a),"",a),""),""),"")))),,1),C,CHOOSECOLS, VSTACK(C(a,SEQUENCE(,31)),C(a,SEQUENCE(,31,33)),C(a,SEQUENCE(,31,65))))
3.=IFERROR(DROP(DROP(REDUCE(0,{0,3,6,9},LAMBDA(B,r,VSTACK(B,REDUCE(0,{1,2,3},LAMBDA(h,c,LET(s,DATE(B1,r+c,1),q,SEQUENCE,L,q(DAY(EOMONTH(s,0)),,s),HSTACK(h,EXPAND(VSTACK(TEXT(s,"mmm"),TEXT(q(,7),"ddd"),WRAPROWS(DAY(IFERROR(VSTACK(IFS(q(MOD(s-1,7)),""),L),L)),7,"")),9,8)))))))),1,1),,-1),"")
4.=DROP(REDUCE(0,ROW(1:4)-1,LAMBDA(x,v,VSTACK(x,TAKE(DROP(REDUCE(0,DATE(B1,ROW(1:12),1),LAMBDA(x,v,LET(a,SEQUENCE(6,7)+v-WEEKDAY(v),IFNA(HSTACK(x,VSTACK(TEXT(v,"mmm"),TEXT(SEQUENCE(,7),"ddd"),IF(MONTH(v)=MONTH(a),a,""),""),""),"")))),,1+v*24),,24)))),1,-1)
