2630 |
使用Excel數組公式自製日曆 |
周小鵬:「錦子老師,我想自己動手用Excel製作做一個簡易的日曆,填寫年份、月份,就生成帶有農曆和星期的單月日曆,可是不知該如何做,可否指導一番,謝謝!」
錦子老師:「由於過程繁複需一一說明。
國曆日曆製作
首先點取B2儲存格輸入當年度1月1日(本例為2021/1/1),並設定格式為西元年份「YYYY」,若要顯示為民國年份則格式為「[$-zh-TW]e」。
點取C2儲存格輸入公式:「=B2」,並設定格式為「MM」。
點取B5儲存格輸入公式:
=If(Month(Date(YEAR(B2),Month(B2),1))<Month(Date(Year(B2),Month(B2),1)-(Weekday (Date(Year(B2),Month(B2),1))-1)+{0;1;2;3;4;5}*7+{1,2,3,4,5,6,7}-1),"",Date(Year(B2),Month(B2),1)-(Weekday(Date(Year(B2),Month(B2),1))-1)+{0;1;2;3;4;5}*7 +{1,2,3,4,5,6,7}-1)
按Ctrl+Shift+Enter鍵完成陣列公式的輸入,再將公式複製到B5:H10儲存格。
我們今天製作的這個日曆可以查看從1900年1月1日開始的每個月的日曆。
這是一個7*6的矩陣,只需要一個數組公式填充即可
這個公式參考的是B2儲存格的內容,只要改變B2中的年月日,就會自動生成這個月的日曆。
國曆日曆製作
若要製作帶有農曆的日曆,需要國曆日曆一倍的儲存格,也就是84個儲存格:
新增一張空白工作表。
1、3、5、7、9、11列用來顯示國曆,直接使用國曆日曆。
點取B5儲存格輸入公式:
=國曆!B5
再將公式複製到B5:H5、B7:H7、B9:H9、B11:H11、B13:H13、B15:H15。
2、4、6、8、10、12列用來顯示農曆,用國曆值計算農曆。
點取B6儲存格輸入公式:
=IFERROR(TEXT(B5,IF(--TEXT(B5,"[$-130000]d")=10,初十,IF(--TEXT(B5,"[$-130000]d")= 10,"[$-130000][DBNum1]d","初[$-130000][DBNum1]d"))),"")
再將公式複製到B6:H6、B8:H8、B10:H10、B12:H12、B14:H14、B16:H16。
其實這個函數就是設置顯示格式的函數,從Excel 2007開始,就已經支持農曆轉換,就是用[$-130000]d來轉換,其他的IF語句都是為了修飾「初一」到「初十」,和「十一」到「三十」的。
農曆年(G2儲存格)是用這個公式:
=MID("甲乙丙丁戊己庚辛壬癸",MOD(TEXT(B3,"[$-130000]e")-4,10)+1,1)&MID("子丑寅卯辰巳午未申酉戌亥",MOD(TEXT(B3,"[$-130000]e")-4,12)+1,1)&"年"
農曆月(H2儲存格)用這個公式:
=TEXT(B3,[$-130000][DBNum1]m月)
B2儲存格是要顯示的年份。
C2儲存格是要顯示的月份。
只要修改這兩個單元格的內容,就會自動生成含有農曆的日曆了。
以上就是今天主要學習的知識點,希望對大家有所幫助~~有什麼問題歡迎留言,我會儘量及時的給大家答覆~~
部落格相關範例
2021.10.15 |
|
2021.10.14 |
|
2021.10.13 |
|
2021.10.12 |
|
2021.10.11 |
|
2021.10.10 |
|
2021.10.09 |
|
2021.10.08 |
|
2021.10.07 |
|
2021.10.06 |
|
2021.10.05 |
|
2021.10.04 |
|
2021.10.03 |
|
2021.10.02 |
|
2021.10.01 |
|
2021.09.30 |
|
2021.09.29 |
|
2021.09.28 |
留言列表