excel - Excel/Google 电子表格中独特的月年组合

标签 excel google-sheets unique

我有一个包含日期的列 (A),我想创建一个包含唯一月份-年份的列。

我可以使用 UNIQUE 函数,但这需要创建一个额外的列 (B): = DATE(YEAR(A1),MONTH(A1)) 和最后一列 = UNIQUE(B1:B)

问题是,我可以在不创建额外列的情况下做到这一点吗?

最佳答案

截至 2023 年,GSheet 和 Excel 都具有 UNIQUE 函数和 BYROW 函数,该函数比 ARRAYFORMULA 定义更好且更易于理解。因此,我提出了一种适用于这两种产品的新解决方案:

=unique(byrow(A:A; lambda(d; date(year(d); month(d); 1))))

解释:BYROW() 函数循环遍历 A 列中的所有日期,并使用 LAMBDA() 构造一个日期列,该列将每个日期的月份日期替换为 1。然后 UNIQUE () 函数仅采用唯一的日期。

-- 下面的答案在 GSheet 中仍然有效,但有点过时,并且在 Excel 中不起作用 --

将日期表达式包装在 ARRAYFORMULA 中:

=UNIQUE(ARRAYFORMULA(DATE(YEAR(A1:A10), MONTH(A1:A10), 1))

Excel 中没有 UNIQUE() 函数,仅存在于 Google 表格中。您可以使用 INDEX/MATCH/COUNTIF 公式方案来模拟它,但它肯定不像上面的解决方案那么简单。

关于excel - Excel/Google 电子表格中独特的月年组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48600780/

相关文章:

google-apps-script - Trello 新卡片创建/修改为谷歌表格

php - 生成随机且唯一的字符串

perl - 如何从 Perl 数组中删除重复项?

excel - 以编程方式将链接添加到 Excel 电子表格

excel - 将图表导出为图像 - 只需单击按钮

google-apps-script - 如何复制电子表格并将其保存到特定文件夹?

google-sheets - 在 Google 表格中将文本转换为数字

Xml 模式唯一性不检查唯一性

python - Excel - 查找前一行和各种范围大小的最大值

xml - 是否可以在 Microsoft 文档中存储自定义数据?