对于每个日历,01-02-03 / jan / 2016周的周数为第53周。
但是在excel(VBA和Sheet Formula)中,这是nr周。 2016年1月。
cellValue = "01/01/2016"
res = WorksheetFunction.WeekNum(cellValue, 2)
这是严重错误还是正确?
这个问题有补丁吗?
答案 0 :(得分:3)
看起来您正在使用周数的ISO定义。如果是这样,那么您需要将该行更改为:
last
有关VBA for weeknum计算的非常好的解释,请查看http://www.cpearson.com/excel/WeekNumbers.aspx。
BTW,函数res = DatePart("ww", d, vbMonday, vbFirstFourDays)
和=WEEKNUM()
在Excel版本中的工作方式不同,因此您可以使用纯VBA解决方案获得更多控制权。
答案 1 :(得分:2)
你应该使用21而不是2作为第二个参数。