繁体   English   中英

根据条件连接单元格

[英]Concatenate cells based on criteria

因此,我试图找到最有效的方法来连接一些值,以查看我的学生需要上交的缺失作业是什么。我有一张类似这样的表格(日期表示交付作业的时间):

ID 姓名 作业 1 作业 2 作业 3
1 约翰 21 年 9 月 7 日 21 年 9 月 7 日 21 年 9 月 7 日
2 彼得 21 年 8 月 7 日 21 年 9 月 7 日 21 年 9 月 7 日
3 莱斯利 21 年 8 月 7 日 21 年 9 月 7 日 21 年 9 月 7 日
4 卡拉 21 年 9 月 7 日 21 年 9 月 7 日
5 苏西
6 埃德 21 年 9 月 7 日 21 年 9 月 7 日 21 年 9 月 7 日

我想要的 output 将是另一个名为“缺少作业”的列,其中缺少作业的名称/编号如下:

ID 姓名 作业 1 作业 2 作业 3 缺少作业
1 约翰 21 年 9 月 7 日 21 年 9 月 7 日 21 年 9 月 7 日
2 彼得 21 年 8 月 7 日 21 年 9 月 7 日 21 年 9 月 7 日
3 莱斯利 21 年 8 月 7 日 21 年 9 月 7 日 21 年 9 月 7 日
4 卡拉 21 年 9 月 7 日 21 年 9 月 7 日 作业 1
5 苏西 作业1,作业2,作业3,
6 埃德 21 年 9 月 7 日 21 年 9 月 7 日 21 年 9 月 7 日

我想使用的公式是

=IF([@[Homework 1]]<>"","","Homework 1")

然后对所有其他任务应用相同的逻辑。但我相信这应该是一种更好的方法。 因为对于这个例子,它“有效”,因为我只有 3 列的作业,但是如果我有 50 个作业而不是 3 个作业,我怎么能做到呢? 使用我现在使用的公式来做这件事似乎有点奇怪。

另一种选择可能是使用 TEXTJOIN

=TEXTJOIN(",",TRUE,IF([@[Homework 1]]<>"","","Homework 1"), IF([@[Homework 2]]<>"","","Homework 2"), IF([@[Homework 3]]<>"","","Homework 3"), 

但是,我仍然需要使用多个 IF。

你有什么建议?

利用:

=TEXTJOIN(", ",TRUE,IF(Table1[@[Homework 1]:[Homework 3]]="",Table1[[#Headers],[Homework 1]:[Homework 3]],""))

根据您的版本,这可能需要在退出编辑模式时使用 Ctrl-Shift-Enter 而不是 Enter 来确认。

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM