簡體   English   中英

Excel:VBA和公式表中的WeekNum錯誤

[英]Excel: WeekNum error in VBA and Formula Sheet

對於每個日歷,星期幾01-02-03 / jan / 2016是第53周。

但是在excel(VBA和工作表公式)中,這是星期nr。 2016年1月1日。

 cellValue = "01/01/2016"
 res = WorksheetFunction.WeekNum(cellValue, 2)

這是嚴重的錯誤還是正確的?

是否有針對此問題的補丁?

看起來您正在使用周數的ISO定義。 如果是這樣,那么您需要將行更改為:

res = DatePart("ww", d, vbMonday, vbFirstFourDays)

有關VBA用於周數計算的真正很好的解釋,請訪問http://www.cpearson.com/excel/WeekNumbers.aspx

順便說一句,在Excel版本中,函數=WEEKNUM()WorksheetFunction.Weeknum()工作方式有所不同,因此使用純VBA解決方案可能具有更多控制權。

您應該使用21而不是2作為第二個參數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM