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
似乎是一个奇怪的错误。 如果使用带有“21”的Excel函数WeekNum
作为第二个参数(在Excel 2010中可用),则30.12.2019的一周可以(= 1)。 从Excel 2013开始,还有一个functionIsoWeekNum
。 如果您需要VBA中的星期编号,则可以使用WorksheetFunction.WeekNum
看起来问题是你的参数。 尝试使用最后一个参数上的vbFirstJan1。