標題:
[發問]
請求年度週次的計算
[打印本頁]
作者:
b9208
時間:
2011-11-28 16:20
標題:
請求年度週次的計算
先進您好
請求年度週次的計算
例如:2011/1/1為1101週,2011/1/3為1102週,毎週由星期一開始。
Excel中 有 WeekNUM (A3,2) 可以計算年度第幾週。
請教如何用VBA來執行計算週次?
懇請幫忙
非常感謝
[attach]8652[/attach]
作者:
GBKEE
時間:
2011-11-28 16:49
回復
1#
b9208
Option Explicit
Sub Ex()
Dim E As Range
For Each E In [C4:C10]
Cells(E.Row, "B") = Mid(Year(Date), 3) & Format(DatePart("WW", E, 2), "00")
Next
End Sub
複製代碼
作者:
register313
時間:
2011-11-28 16:51
回復
1#
b9208
已有WeekNUM 函數可計算週次
為何還要用VBA
作者:
oobird
時間:
2011-11-28 16:53
For i = 4 To 10
Cells(i, 2) = Format(Format(Cells(i, 3), "ww"), "1100")
Next
作者:
oobird
時間:
2011-11-28 17:11
正統一些:
Sub yy()
For i = 4 To 10
Cells(i, 2) = Format(DatePart("ww", Cells(i, 3), 2, 1), "1100")
Next
End Sub
作者:
b9208
時間:
2011-11-28 19:48
回復
2#
GBKEE
感謝前輩指導
修正如下,日期格式為2011/2/2,則週次表示〞1102〞、"1202〞.......
For Each E In .Range(.[C4], .[C65536].End(xlUp))
.Cells(E.Row, "B") = Mid(E, 3, 2) & Format(DatePart("WW", E, 2), "00")
.Cells(E.Row, "D") = Weekday(E) '以星期表示
Next
另請問 .Cells(E.Row, "D") = Weekday(E) 計算後輸出1,2,3.....7等數字表示,
經重新設定D欄格式為〞DDD〞,則可轉成 Mon, Tue, Wed......等表示,
有方法不用設定格式,而直接以Mon, Tue, Wed......等表示。
謝謝
作者:
b9208
時間:
2011-11-28 19:49
回復
5#
oobird
前輩
非常感謝指導
作者:
GBKEE
時間:
2011-11-28 20:00
回復
6#
b9208
.Cells(e.Row, "D") = Format(Weekday(e), "ddd") '縮寫顯示
.Cells(e.Row, "D") = Format(Weekday(e), "dddd") '全部顯示
作者:
b9208
時間:
2011-11-28 20:13
回復
8#
GBKEE
謝謝GBKEE版大
完全可以使用
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)