如何获取仅由表中的值大于零的日期(列)组成的日期字符串?

如何获取仅由表中的值大于零的日期(列)组成的日期字符串?

我需要一个 excel 数组公式来创建一个由天数组成的字符串(例如“周日周一周五”)。字符串内容将取决于数据透视表。

如果数据透视表单元格中的值 >0,则应将相应列中的日期用作该字符串的输入。

例如:如果我的数据透视表的一行的值为 1,0,0,0,1,0,0(对应的日期为 2 月 10 日至 17 日)。字符串应为“Wed Sun”。

答案1

假设您的数据透视表行是第 5 行,而每列对应的日期在第 4 行,则可以使用如下公式:

=TEXTJOIN(" ",TRUE,TEXT(FILTER($B$4:$H$4,$B$5:$H$5=1),"ddd"))

在此处输入图片描述

FILTER说“从第 4 行获取第 5 行等于 1 的值”。TEXT将返回的日期转换为 3 个字母的日期缩写。TEXTJOIN将结果合并到一个单元格中,每一天都用空格隔开。

编辑:

为了更具体地回答您的问题,您可能希望过滤条件为>0:

=TEXTJOIN(" ",TRUE,TEXT(FILTER($B$4:$H$4,$B$5:$H$5>0),"ddd"))

相关内容