技巧區‎ > ‎中級程度‎ > ‎

把星期六和星期日突出顯示出來 [2003年11月]

張貼者:2010年5月29日 上午6:45Carson Cheng
有時候我們會用Excel來記錄一些事情,一個月一個工作表,每欄就是一天,每行就是一筆記錄,見下圖。如果年份(B1)和月份(B2)都會隨時改變,我們想把星期六和星期日的日子(欄)突出起來,該怎辦呢?



定義範圍名稱
1)首先把B1定義為「Year」、B2定義為「Month」(中文也可以),方便取用;

日子
2)由於每個月都有1日至28日,所以用自動填滿就可以填滿C3:AD3;
3)29日至31日不是每個月都有,故此我就用以下的條件來測試,某一個月是否有29日(例):
  MONTH(DATE(Year,Month,29)=Month
  例如2005年2月是沒有29日的,DATE(2005,2,29)就會變成2005年3月1日,故此條件的左方會變成3,右方當然是2,這就可以知道應不應該顯示29。故此,29日(AE3)的公式是:
  =IF(MONTH(DATE(Year,Month,29)=Month,29,"")
  而30日和31日的公式就分別是:
  =IF(MONTH(DATE(Year,Month,30)=Month,30,"") 和
  =IF(MONTH(DATE(Year,Month,31)=Month,31,"")
  (只是三個公式,我不會嫌麻煩一個一個把日子改變,但如果很多的話,我就會用COLUMN()函數。)
4)把欄寬按需要調節;

把星期六、日突出
5)選擇需要突出的儲存格(C3:AE22);
6)選「格式|設定格式化條件」,改為「公式為」,輸入公式:
  =WEEKDAY(DATE(Year,Month,COLUMN()-2),2)>=6
  為了方便起見,我沒有用第3行的數字來計算日期,我用COLUMN()。C欄代表1日,故此把COLUMN()-2就可以算出日子。
  WEEKDAY()的第二個引數放2,星期六和星期日就分別用6和7代表,那就可以簡單地用>=6去決定是否是星期六或星期天。(沒有引數的話,星期日是1,星期六是7。)
7)按「格式」把合符條件儲存格的格式定義好(背景用米色);
8)按「確定」;
9)完成。
ċ
2_8.zip
(3k)
Carson Cheng,
2010年5月29日 上午6:46
Comments