Board logo

標題: 如何列出每個月的不包含星期六日的固定間隔日期? [打印本頁]

作者: q1a2z5    時間: 2011-5-19 09:35     標題: 如何列出每個月的不包含星期六日的固定間隔日期?

本帖最後由 q1a2z5 於 2011-5-19 10:02 編輯

請問 :
想列出每個月的不包含星期六日的固定間隔日期,該如何處理?

另外,日期格式想顯示100年5月18日及2011/05/18這二種格式的話,鍵盤該輸入什麼鍵?

謝謝!
作者: mark15jill    時間: 2011-5-19 09:39

本帖最後由 mark15jill 於 2011-5-19 09:43 編輯

回復 1# q1a2z5


    板上有很多類似的問題  樓主您有看過嗎-0-..
請善用 右上角 搜索的功能..
剛剛稍微爬了一下文
發現有很多帖子都是關於此方面的 可能要麻煩樓主看一下
作者: q1a2z5    時間: 2011-5-20 10:56

我在網路上看到可列出每個月的星期六 '日的一個函數教學,但是我作不出來,
請問該如何作呢? 謝謝!

教學內容如下:
Excel-列出週六日的日期
在 Excel 中提供了多種方便使用的日期函數,如果要列出某年的週六、週日之日期(如下圖),該如何設計?
先在儲存格B1中以資料驗證方式,指定儲存格為「清單」,內容為「2010,2011,2012,2013」。

接著設定一個名稱:DATA
DATA:=INDIRECT("A"&DATE($B$1,1,1)&":A"&DATE($B$1,12,31))
公式中的:"A"&DATE($B$1,1,1)&":A"&DATE($B$1,12,31)
假設儲存格B1的內容為2011,
則公式=A40544:A40908,40544為2011/1/1的數值,而40908為2011/12/31的數值。
再透過INDIRECT函數轉成儲存格位址。也就是當選擇了一個年度時,會產生一組位址和日期數值相同的儲存格陣列。

(1) 找出日期
儲存格B3:{=SMALL(IF(WEEKDAY(ROW(DATA),2)>5,ROW(DATA),FALSE),ROW(1:1))}
ROW(DATA)會將日期位址的陣列轉換回數值(例如:40544、40545、40546…)陣列,而WEEKDAY函數用以找出是否為星期六、日(傳回值為6,7)。
SMALL函數可以依序(藉由ROW函數)由小到大列出日期。
複製儲存格B3,往下貼上。

(2) 顯示星期六、日
儲存格C3:=CHOOSE(WEEKDAY(B3,2)-5,"六","日")
因為WEEKDAY(B3,2)會傳回6或7,所以減5後得1或2,在CHOOSE函數中可得「六或日」。
複製儲存格C3,往下貼上。

(3) 顯示月份
儲存格A4:=IF(MONTH(B4)=MONTH(B3),"",MONTH(B4)&"月")
因為只有該月的第一天會顯示月份,所以只要比對和上一個儲存格所得的月份不同者顯示月份,否則顯示空白。
複製儲存格A4,往下貼上。
同理,如果你想要只找出某一年中星期二的所有日期:
儲存格F3:{=SMALL(IF(WEEKDAY(ROW(DATA),2)=2,ROW(DATA),FALSE),ROW(1:1))}
複製儲存格F3,往下貼上。
作者: Hsieh    時間: 2011-5-20 14:09

回復 3# q1a2z5

表格如圖
工具/增益集/勾選分析工具箱
A2輸入年份,B2輸入月份
B3=WORKDAY(WORKDAY(DATE($A$2,$B$2,0),1,$E$2:$E$4),ROW(A1)-1,$E$2:$E$4)
[attach]6285[/attach]




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)