簡體   English   中英

周數和年份組合

[英]week number and year combination

過去在 Excel 的 Weeknumber 和 Year 上提出了幾個問題,但是,我有一個具體的問題我找不到答案。

我正在嘗試獲取 YYWW 格式的年份和周數的組合,例如 1752 或 1801,基於帶有日期的列,如下所示:

Date         Year  Week
01-01-2018   18    01
02-01-2018   18    01
...
31-12-2018   18    01

年份只需使用日期上的YEAR function 確定,星期數使用日期上的ISOWEEKNUM function 確定。 然后是一些進一步的處理,根據年份和周數對數據求和,問題是 2018 年第 1 周也考慮了 2018 年 12 月 31 日的數據,而 12 月 31 日顯然是不是在 2018 年的第 1 周,而是在 2019 年的第 1 周。

所以問題是,我怎樣才能“解決”這個問題,那么我怎樣才能讓 Excel 在 2018 年 12 月 31 日給我 19 和 01? 理想情況下,我正在尋找不涉及任何 VBA 的解決方案。

任何幫助深表感謝!

對於ISO周數,每周的星期四始終位於“等周年”內,因此對於任何日期,要獲取正確的年份,只需找到該周星期四的年份即可。 您可以這樣做:

=YEAR(A1+3-WEEKDAY(A1;3))

因此,最后,由於尼克和ImaginaryHuman072889的反饋,我像這樣修復了它:

=YEAR(A1)+IF(AND(MONTH(A1)=12;ISOWEEKNUM(A1)=1);1;0)+IF(AND(MONTH(A1)=1;ISOWEEKNUM>=52);-1;0)

我寧願不嵌套IF語句以提高可讀性,因為無論如何它們永遠不會同時導致TRUE

只有其他幾個對我有用的選項:

=YEAR(A1)+AND(MONTH(A1)=12;ISOWEEKNUM(A1)=1)-AND(MONTH(A1)=1;ISOWEEKNUM>=52)

=YEAR(A1)+SWITCH(MONTH(A1)&ISOWEEKNUM(A1);"121";1;"152";-1;"153";-1;0)

暫無
暫無

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

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