年度周数
函数名:time_年度周数 / tm_WeekOfYear
功能描述
获取指定日期在一年中的周数。支持输入日期文本字符串或 Excel 日期序列值,自动适配系统区域文化的周数计算规则。
会员等级:🟢 免费版(Free)
语法
excel
=time_年度周数(日期)参数
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| 日期 | Object | 是 | 无 | 日期文本(如 "2025-07-18")或 Excel 日期序列值(如 45000) |
返回值
Object - 日期在一年中的周数(整数)。输入无效时返回错误字符串或 #VALUE!。
使用示例
文本日期输入
公式:
excel
=time_年度周数("2025-07-18")结果:
29Excel 日期序列输入
公式:
excel
=time_年度周数(45000)结果:
29引用单元格日期
公式:
excel
=time_年度周数(A1)结果:
29(A1 单元格包含日期值 2025-07-18)
技术说明
- 输入为字符串时,先尝试
DateTime.TryParse直接解析为日期。 - 若字符串解析失败,再尝试
double.TryParse将其视为 Excel 日期序列值,通过DateTime.FromOADate转换。 - 输入为数值(double)时,直接通过
DateTime.FromOADate转换为日期。 - 周数计算使用当前系统区域文化
CultureInfo.CurrentCulture的日历。 - 计算规则为
CalendarWeekRule.FirstDay(每周第一天为起始),每周起始日为星期一(DayOfWeek.Monday)。
错误处理
| 错误场景 | 返回值 |
|---|---|
| 字符串无法解析为日期 | 无效的日期格式 |
| 输入类型不支持(非 string/double) | 不支持的输入类型 |
| 其他异常 | #VALUE! |
| 正常输入 | 周数(整数) |