Tag: datepart

Excel VBA格式函数不会返回所需的date

我有一个Excel表格,E2 =“10-Apr-16”作为自定义格式。 我想返回它的周数(也许是16)。 我使用的代码(E2有效): With ActiveCell .NumberFormat = "mm/dd/yyyy" .Value = Date End With oneDate = Format(Range("E2").Select, "mm/dd/yyyy") weekNumber = DatePart("ww", oneDate) oneDate竟然是12/29/1899,WeekNumber是52.我的代码有什么问题? 更新: 我后来改变了代码: Range("E:E").NumberFormat = "m/dd/yyyy" oneDate = Range("E2") oneDate = Format(Range("E2").Select, "m/dd/yyyy") weekNumber = DatePart("ww", oneDate) 有了这个,我得到12/29/1899作为一个date,52作为weekNumber。 没有第三行(甚至没有第一行),代码将正常工作,并返回16作为weekNumber; 随着第三行(不pipe有没有第一行),它仍然返回12/29/1899。 我认为问题是在第三行的代码,但不知道它是什么。 有人知道我做错了吗?

VBA,date部分,日历周,2019年

VBA,Excel在2019年给我错误的日历周。 我会得到日历周date:30.12.2019,本周必须1,但给53。 DatePart("ww", "30.12.2019", vbMonday, vbFirstFourDays) ' ->Output 53 DatePart("ww", "31.12.2019", vbMonday, vbFirstFourDays) ' ->Output 1 DatePart("ww", "29.12.2019", vbMonday, vbFirstFourDays) ' ->Output 52 快速查看正确的日历https://www.kalender-365.eu/kalender-2019.html它必须1 – 不53。 有没有人解决这个错误? 更多testing: DatePart("w", "30.12.2019", vbMonday, vbFirstFourDays) ' -> Output 1, means Sunday. 但是星期一30.12.2019 。 DatePart("w", "31.12.2019", vbMonday, vbFirstFourDays) ' -> Output 2, means Monday 但是31.12.2019是星期二 – 关于raiserle