小智 18
=DATE(B9,1,1)-WEEKDAY(DATE(B9,1,1),3)+7*(WEEKDAY(DATE(B9,1,1),3)>3)+7*(A9-1)
Run Code Online (Sandbox Code Playgroud)
是最复杂的公式,我知道这工作在瑞典周数(即Monday first day of week,ISO对于什么是一周的规则1).
Pyl*_*nux 13
=DATE(B1;1;1)+((A1-1)*7)-WEEKDAY(DATE(B1;1;1);3)
Run Code Online (Sandbox Code Playgroud)
DATE(<year>;1;1) // days since 1970 until the frist day of the year
Run Code Online (Sandbox Code Playgroud)
加
((<week number>-1)*7) // how many days into the year is this week
Run Code Online (Sandbox Code Playgroud)
减去
WEEKDAY(DATE(<year>;1;1);3) // how many extra days from previous year in first week
Run Code Online (Sandbox Code Playgroud)
这假设星期一作为一周的第一天,您必须更改WEEKDAY的参数以将其更改为星期日
小智 5
由于这个定义 ( https://en.wikipedia.org/wiki/Week ) 必须使用 1 月 4 日而不是 1 日。1 月 4 日是第 1 周的第一天。
=DATE(B1;1;4)+((A1-1)*7)-WEEKDAY(DATE(B1;1;4);3)
Run Code Online (Sandbox Code Playgroud)