有人可以分解这个 ISOWeekNumber 公式并详细向我解释该公式的工作原理吗?
=INT((A1-WEEKDAY(A1,2)-DATE(YEAR(A1+4-WEEKDAY(A1,2)),1,4))/7)+2
和这个?
=INT((A1-DATE(YEAR(A1-WEEKDAY(A1-1)+4),1,3)+WEEKDAY(DATE(YEAR(A1-WEEKDAY(A1-1)+4),1,3))+5)/7)
另一个,
=INT((A1-SUM(MOD(DATE(YEAR(A1-MOD(A1-2,7)+3),1,2),{1E+99;7})*{1;-1})+5)/7)
另一个,
=INT((A1-DATE(YEAR(A1-WEEKDAY(A1-1)+4),1,3)+WEEKDAY(DATE(YEAR(A1-WEEKDAY(A1-1)+4),1,3))+5)/7)
另一个,
=1+INT((A1-DATE(YEAR(A1+4-WEEKDAY(A1+6)),1,5)+WEEKDAY(DATE(YEAR(A1+4-WEEKDAY(A1+6)),1,3)))/7)
哪一个作为 ISO 周数是正确的或更准确的,因为我找不到这些公式背后逻辑的任何解释?
答案1
第一种公式;由巴里·胡迪尼开发。(见以下链接) http://addinbox.sakura.ne.jp/Excel_Tips20E.htm#barry
第二种配方;由 Frank Kabel 开发。(见以下链接) http://addinbox.sakura.ne.jp/Excel_Tips20E.htm#MSDN
第三个公式;我不明白。
第4个公式;与第2个公式相同。
第五个公式;它转化了第二个公式。(见下文)
WEEKDAY(A1+6) is equal with WEEKDAY(A1-1).
DATE(any, 1, 5) is equal with (DATE(any, 1, 3)+2).
=1+INT((A1 - DATE(YEAR(A1+4-WEEKDAY(A1+6)),1,5) + WEEKDAY(DATE(YEAR(A1+4-WEEKDAY(A1+6)),1,3)) )/7)
=(7/7)+INT((A1 - DATE(YEAR(A1-WEEKDAY(A1-1)+4),1,5) + WEEKDAY(DATE(YEAR(A1-WEEKDAY(A1-1)+4),1,3)) )/7)
=INT((A1 - DATE(YEAR(A1-WEEKDAY(A1-1)+4),1,5) + WEEKDAY(DATE(YEAR(A1-WEEKDAY(A1-1)+4),1,3)) + 7)/7)
=INT((A1-(DATE(YEAR(A1-WEEKDAY(A1-1)+4),1,3) + 2) + WEEKDAY(DATE(YEAR(A1-WEEKDAY(A1-1)+4),1,3)) + 7)/7)
=INT((A1-DATE(YEAR(A1-WEEKDAY(A1-1)+4),1,3) + WEEKDAY(DATE(YEAR(A1-WEEKDAY(A1-1)+4),1,3)) + 7 - 2 )/7)
=INT((A1-DATE(YEAR(A1-WEEKDAY(A1-1)+4),1,3) + WEEKDAY(DATE(YEAR(A1-WEEKDAY(A1-1)+4),1,3)) + 5 )/7)
日本的 AddinBox(K.Tsunoda)。
上面提到的链接是我的网站。(更改 URL 链接。2017 年 9 月 10 日)