excel - Excel:计算财政年度的星期
问题描述
我正在尝试计算给定日期所在财政年度的周数——我们的财政年度从 7 月 1 日开始,到 6 月 30 日结束,从周日到周六开始的几周,并且数据包含多年。
例如:2017 年 7 月 1 日是星期六,所以它是财政年度的第 1 周。2017 年 7 月 2 日至 7 月 8 日为第 2 周,2018 年 6 月 23 日至 6 月 30 日为第 52 周,这将从 2018 年 7 月 1 日的第 1 周开始。
任何帮助将不胜感激,谢谢!
我正在使用的数据的屏幕截图
Weekday、FiscalYear 和 FiscalQuarter 中的公式截图]
解决方案
与其他人不同,我理解您的意思是财政年度总是从 7 月 1 日开始,而星期在星期日发生变化。
算法
- 在 7 月 1 日之前计算:
=DATE(YEAR(A2)-IF(MONTH(A2)>=7,0,1),7,1)
- 计算财政年度的第一个星期日:
=prevJul1 +7-WEEKDAY(prevJul1 +6)
- 计算自第一个星期日以来的周数:
=INT((A2-firstSunday)/7)+1
- 添加
1
如果prevJul1
不是星期天
把它们放在一起:
=INT((A2-(DATE(YEAR(A2)-IF(MONTH(A2)>=7,0,1),7,1)+7-WEEKDAY(DATE(YEAR(A2)-IF(MONTH(A2)>=7,0,1),7,1)+6)))/7)+1+(WEEKDAY(DATE(YEAR(A2)-IF(MONTH(A2)>=7,0,1),7,1))<>1)
推荐阅读
- php - MySQL根据表列中的值返回不同的字符串
- swift - Swift firebase 通过字符串数组查询数据
- android - “gradle”和“gradle plugin”有什么区别?
- linux - 仅使用 GNU sed 在第一次匹配时插入问题
- android - 设置 config sdk 目标时,RobolectricTestRunner 失败
- rest - 如何过滤不存在属性的 OData 集合?
- python-3.x - Atom 找不到 discord 和 asyncio
- java - 对 Spring Boot 的 Angular HTTP POST 请求导致空值
- javascript - Node.js - 收到 Promise 后渲染
- mysql - 线程未返回所有订阅用户