JAVA—咖啡館

          ——?dú)g迎訪問rogerfan的博客,常來《JAVA——咖啡館》坐坐,喝杯濃香的咖啡,彼此探討一下JAVA技術(shù),交流工作經(jīng)驗(yàn),分享JAVA帶來的快樂!本網(wǎng)站部分轉(zhuǎn)載文章,如果有版權(quán)問題請(qǐng)與我聯(lián)系。

          BlogJava 首頁 新隨筆 聯(lián)系 聚合 管理
            447 Posts :: 145 Stories :: 368 Comments :: 0 Trackbacks
          這個(gè)萬年歷可以顯示當(dāng)月的月歷,還可以隨意查閱任何日期所屬的月歷,非常方便。如果你愿意,還可以讓它在特殊的日子里顯示不同的提醒文字,一起來試試吧!

            本文所涉及到的函數(shù)有:

            1、AND (logical1,logical2, ...)

            2、DATE (year,month,day)

            3、DAY (serial_number)

            4、IF (Logical,Value_if_true,Value_if_false)

            5、INT (number)

            6、MONTH (serial_number)

            7、NOW ()

            8、OR (logical1,logical2, ...)

            1、啟動(dòng)EXCEL2003,新建一個(gè)工作表,取名保存(如萬年歷.xls),并在相應(yīng)的單元格中,輸入如圖1所示的文本。

            圖片點(diǎn)擊可在新窗口打開查看

            2、同時(shí)選中B1、C1、D1單元格,按“格式”工具欄上的“合并及居中”按鈕,將其合并成一個(gè)單元格,并輸入公式:=TODAY()。

          選中B1(合并后的)單元格,執(zhí)行“格式→單元格”命令,打開“單元格格式”對(duì)話框(如圖2),在“數(shù)字”標(biāo)簽中的“分類”下面選中“日期”選項(xiàng),再在右側(cè)“類型”下面選中“二○○一年三月十四日”選項(xiàng),“確定”退出,將日期設(shè)置成中文形式。

            圖片點(diǎn)擊可在新窗口打開查看

            注意:TODAY()函數(shù)用于提取當(dāng)前系統(tǒng)日期,請(qǐng)將系統(tǒng)日期一定要調(diào)整準(zhǔn)確喲。

            3、選中F1單元格,輸入公式:=IF(WEEKDAY(B1,2)=7,"日",WEEKDAY(B1,2));選中H1單元格,輸入公式:=NOW()。

          選中F1單元格,打開“單元格格式”對(duì)話框,在“數(shù)字”標(biāo)簽中的“分類”下面選中“特殊”選項(xiàng),再在右側(cè)“類型”下面選中“中文小寫數(shù)字”選項(xiàng),“確定”退出,將“星期數(shù)”設(shè)置成中文小寫形式;選中H1單元格,打開“單元格格式”對(duì)話框,在“數(shù)字”標(biāo)簽中的“分類”下面選中“時(shí)間”選項(xiàng),再在右側(cè)“類型”下面選中一款時(shí)間格式,“確定”退出。

            注意:①上述前面一個(gè)公式的含義是:如果(IF)當(dāng)前日期(B1)是星期“7”(WEEKDAY(B1,2)=7),則在F1單元格中顯示“日”,否則,直接顯示出星期的數(shù)值(WEEKDAY(B1,2))。
            ②上述第二個(gè)函數(shù)(NOW())用于提取當(dāng)前系統(tǒng)日期和時(shí)間,也請(qǐng)將系統(tǒng)日期和時(shí)間調(diào)整準(zhǔn)確。

            4、在I1、I2單元格分別輸入1900、1901,然后同時(shí)選中I1、I2單元格,用“填充柄”向下拖拉至I151單元格,輸入1900—2050年份序列。
            同樣的方法,在J1至J12單元格中輸入1—12月份序列。

            5、選中D13單元格,執(zhí)行“數(shù)據(jù)→有效性”命令,打開“數(shù)據(jù)有效性”對(duì)話框(如圖3),按“允許”右側(cè)的下拉按鈕,選中“序列”選項(xiàng),在“來源”下面的方框輸入:=$I$1:$I$151,“確定”退出。



            同樣的操作,將F15單元格數(shù)據(jù)有效性設(shè)置為“=$J$1:$J$12”序列。

            注意:經(jīng)過這樣的設(shè)置以后,當(dāng)我們選中D15(或F15)單元格時(shí),在單元格右側(cè)出現(xiàn)一個(gè)下拉按鈕,按此下拉按鈕,即可選擇年份(或月份)數(shù)值,快速輸入需要查詢的年、月值。

          6、選中A2單元格(不一定非得是A2喲),輸入公式:=IF(F13=2,IF(OR(D13/400=INT(D13/400),AND(D13/4=INT(D13/4),D13/100<>INT(D13/100))),29,28),IF(OR(F13=4,F13=6,F13=9,F13=11),30,31)),用于獲取查詢“月份”所對(duì)應(yīng)的天數(shù)(28、29、30、31)。

            注意:上述函數(shù)的含義是:如果查詢“月份”為“2月”(F13=2)時(shí),并且“年份”數(shù)能被400整除[D13/400=INT(D13/400)],或者(OR)“年份”能被4整除,但不能被100整除[AND(D13/4=INT(D13/4),D13/100<>INT(D13/100))],則該月為29天(也就是我們通常所說的“閏年”),否則為28天。如果“月份”不是2月,但是“4、6、9、11”月,則該月為30天。其他月份天數(shù)為31天。

            7、選中B2單元格,輸入公式:=IF(WEEKDAY(DATE($D$13,$F$13,1),2)=B3,1,0)。再次選中B2單元格,用“填充柄”將上述公式復(fù)制到C2—H2單元格中。

            注意:①上述B2公式的含義是:如果“查詢年月”的第1天是星期“7”(WEEKDAY(DATE)($D$13,$F$13,1),2)=B3)時(shí),在該單元格顯示“1”,反之顯示“0”),為“查詢年月”獲取一個(gè)對(duì)照值,為下面制作月歷做準(zhǔn)備。
            ②上述C2—H2單元條中公式的含義與B2相似。
            ③在用拖拉法復(fù)制公式時(shí),公式“絕對(duì)引用”的單元格(加了“$”號(hào)的,如“$D$13”等)不會(huì)發(fā)生改變,而“相對(duì)引用”的單元格(沒有加“$”號(hào)的,如“B3”等),則會(huì)智能化地發(fā)生變化,例如在E2單元格中,“B3”變成了“E3”,整個(gè)公式成為:=IF(WEEKDAY(DATE($D$13,$F$13,1),2)=E3,1,0)。

            8、選中B6單元格,輸入公式:=IF(B2=1,1,0)。選中B7單元格,輸入公式:=H6+1。用“填充柄”將B7單元格中的公式復(fù)制到B8、B9單元格中。

            分別選中B10、B11單元格,輸入公式:=IF(H9>=A2,0,H9+1)和=IF(H10>=A2,0,IF(H10>0,H10+1,0))。

            選中C6單元格,輸入公式:=IF(B6>0,B6+1,IF(C2=1,1,0))。用“填充柄”將C6單元格中的公式復(fù)制到D6—H6單元格中。  

            選中C7單元格,輸入公式:=B7+1。用“填充柄”將C7單元格中的公式復(fù)制到C8、C9單元格中。同時(shí)選中C7—C9單元格,用“填充柄”將其中的公式復(fù)制到D7—H9單元格中。

            選中C10單元格,輸入公式:=IF(B11>=$A$2,0,IF(B11>0,B11+1,IF(C6=1,1,0)))。用“填充柄”將C10單元格中的公式復(fù)制到D10—H10單元格和C11單元格中。

            至此,整個(gè)萬年歷(其實(shí)沒有萬年,只有從1900—2050的151年)制作完成。

            下面,我們一起來將其裝飾一下。
          9、選中相應(yīng)的單元格,利用工具欄上的相應(yīng)按鈕,設(shè)置好字體、字號(hào)、字符顏色等。
            選中相應(yīng)的單元格,打開“單元格格式”對(duì)話框,在“對(duì)齊”標(biāo)簽下,設(shè)置好單元格中文本的對(duì)齊方式(通常情況下,垂直對(duì)齊可以一次性設(shè)置為“居中”,水平“對(duì)齊”根據(jù)具體情況設(shè)置)。

            同時(shí)選中I列和J列,右擊鼠標(biāo),選“隱藏”選項(xiàng),將相應(yīng)的列隱藏起來,使得界面更加友好。用同樣的方法,將第2和第3行也隱藏起來。

            10、選中B5—H11單元格區(qū)域,打開“單元格格式”對(duì)話框,進(jìn)入“邊框”標(biāo)簽,選擇好“顏色、樣式”,并“預(yù)置”好邊框范圍,然后“確定”退出,為月歷加上邊框。

            11、執(zhí)行“工具→選項(xiàng)”命令,打開“選項(xiàng)”對(duì)話框(如圖4),在“視圖”標(biāo)簽下(通常是默認(rèn)標(biāo)簽),清除“零值”和“網(wǎng)格線”復(fù)選框中的“∨”號(hào),“確定”退出,讓“零值”和“網(wǎng)格線”不顯示出來。



            12、將B14—H14和B15—H15單元格分別合并成一個(gè)單元格,并在B14和B15單元格中輸入公式:=IF(AND(MONTH(D1)=1,DAY(D1)=1),"新的新氣象!加油呀!",IF(AND(MONTH(D1)=3,DAY(D1)=8),"向女同胞們致敬!",IF(AND(MONTH(D1)=5,DAY(D1)=1),"勞動(dòng)最光榮",IF(AND(MONTH(D1)=5,DAY(D1)=4),"青年是祖國(guó)的棟梁",IF(AND(MONTH(D1)=6,DAY(D1)=1),"原天下所有的兒童永遠(yuǎn)快樂",0)))))和=IF(AND(MONTH(D1)=7,DAY(D1)=1),"黨的恩情永不忘",IF(AND(MONTH(D1)=8,DAY(D1)=1),"提高警惕,保衛(wèi)祖國(guó)!",IF(AND(MONTH(D1)=9,DAY(D1)=10),"老師,您辛苦了!",IF(AND(MONTH(D1)=10,DAY(D1)=1),"祝我們偉大的祖國(guó)繁榮富強(qiáng)",0))))。

            設(shè)置好B14和B15單元格的字體、字號(hào)、字符顏色。

            注意:上述公式的含義是:如果當(dāng)前日期逢到相關(guān)的節(jié)日(如“元旦”等),則在B14或B15單元格顯示出相應(yīng)的祝福語言(如“新的新氣象!加油呀!”,參見圖5)。



            由于IF函數(shù)只能嵌套7層,而節(jié)日數(shù)量超過7個(gè)(我們這里給出了9個(gè)),因此,我們用兩個(gè)單元格來顯示。     13、執(zhí)行“格式→工作表→背景”命令,打開“工作表背景”對(duì)話框(如圖6),選擇一張合適的圖片后,按“插入”按鈕,將其襯于工作表文字下面。



          14、在按住“Ctrl”鍵的同時(shí),單擊D13和F13單元格,同時(shí)選中兩個(gè)單元格,開“單元格格式”對(duì)話框,切換“保護(hù)”標(biāo)簽(如圖7),清除“鎖定”前面復(fù)選框中的“∨”號(hào),“確定”退出。



            15、執(zhí)行“工具→保護(hù)→保護(hù)工作表”命令,打開“保護(hù)工作表”對(duì)話框(如圖8),兩次輸入密碼后,確定退出。



            注意:經(jīng)過這樣的設(shè)置后,整個(gè)工作表中除了D13和F13單元格中的內(nèi)容可以改變外,其它單元格中的內(nèi)容均不能改變,保證了萬年歷的使用可靠性。

          萬年歷模板下載

          posted on 2007-12-25 10:19 rogerfan 閱讀(751) 評(píng)論(0)  編輯  收藏 所屬分類: 【操作系統(tǒng)】
          主站蜘蛛池模板: 左权县| 辛集市| 东城区| 昌平区| 车致| 麻城市| 化隆| 云梦县| 正定县| 营山县| 车致| 于都县| 瑞昌市| 金溪县| 宁远县| 历史| 左权县| 若羌县| 汉沽区| 永宁县| 巴中市| 永川市| 独山县| 古浪县| 富民县| 西充县| 抚远县| 陕西省| 天等县| 进贤县| 芷江| 南雄市| 莒南县| 佛教| 胶南市| 盐边县| 镇沅| 高安市| 太康县| 贵定县| 连山|