模块
目录
索引 🔎︎

## WEEKNUM

WEEKNUM 按 ODF OpenFormula 定义的内部日期值计算一年中的周数，与其他电子表格应用程序兼容。

支持两周编号系统:

系统 | Description
系统 1 | 包含1月1日的一周是一年中的第一周, 编号为第 1 周。
系统 2 | 包含一年中第一个星期四的一周是一年中的第一周，编号为第 1 周。这意味着任何一年的第 1 周都包含1月4日。ISO 8601 定义了该系统, 并且规定一周从星期一开始。

### 语法

WEEKNUM(Number; Mode)

「数字」是日期的内部序数。

「模式」设置每周开始的日子和周编号系统。此参数可选, 如果省略, 默认值为 1。

系统 | 模式 | 星期几
系统 1 | 1 | 星期日
2 | 星期一
11 | 星期一
12 | 星期二
13 | 星期三
14 | 星期四
15 | 星期五
16 | 星期六
17 | 星期日
系统 2 | 21 | 星期一 (ISO 8601)
150 | (ISO 8601, 用于与 Gnumeric 的互通性)

将日期作为公式一部分输入时，日期分隔符 (斜杠与短横线) 会被理解为算术运算符。因此，按此格式输入的日期无法正确识别为日期，导致错误计算。要保持日期作为公式一部分，请使用 DATE 函数，例如「DATE(1954;7;20)」或将日期放在引号内，使用 ISO 8601 标记法，例如「1954-07-20」。请避免使用受区域影响的日期格式，例如「07/20/54」，在其他区域设置下加载文档，会导致计算错误。

支持 ISO 8601 日期时间格式 (及其分隔符扩展格式) 的无歧义转换。如果出现 #VALUE! 错误，请在「LibreOffice - 偏好设置工具 - 选项 - LibreOffice Calc - 公式」「详细计算设置」区域的「详细信息...」 按钮，「文本转换为数字」列表框，取消选择「生成 #VALUE! 错误」。

### 示例

「=WEEKNUM(DATE(1995;1;1);1)」返回 1

「=WEEKNUM(DATE(1995;1;1);2)」返回 52。如果一周从星期一开始, 则星期日属于前一年的最后一周。

「=WEEKNUM(DATE(1995;1;1);21)」返回 52。第 1 周从 1995-01-02 星期一开始。

「=WEEKNUM(DATE(1999;1;1);21)」返回 53。第 1 周从 1999-01-04 星期一开始。