连接不确定数量的单元格,忽略Excel中的空格

时间:2017-06-16 15:29:24

标签: excel excel-formula textjoin

查看此页面上的示例https://www.extendoffice.com/documents/excel/3269-excel-concatenate-cells-if-not-empty.html(如下所示)。

如果最后一个条目为空,则此解决方案不起作用。例如,在A列中,如果" Order" A5失踪了,结果将是" KTE-2015-Ruby - "而不是" KTE-2015-Ruby"。

如果没有一堆if语句检查该单元格是否为最后一个不空白的单元格,我将如何获取第二个结果。

有关更多信息,我将始终检查相同数量的行以获取信息,但实际具有文本的行数是不确定的。再以图片为例,我将始终只检查第1-5行,但我不知道哪些行是空白的。

enter image description here

2 个答案:

答案 0 :(得分:1)

如果您有Office 365 Excel,则可以使用TEXTJOIN():

=TEXTJOIN("-",TRUE,A1:A5)

如果没有,那么你需要添加公式以使用LEFT()

删除最后一个字符
=LEFT(A1 & "-" & IF(A2<>"",A2 & "-","") & IF(A3<>"",A3 & "-","") & IF(A4<>"",A4 & "-","") & IF(A5<>"",A5 & "-",""),LEN(A1 & "-" & IF(A2<>"",A2 & "-","") & IF(A3<>"",A3 & "-","") & IF(A4<>"",A4 & "-","") & IF(A5<>"",A5 & "-",""))-1)

这个公式有点不同,因为它总是将-添加到最后。然后用Left删除最后一个-。然后,如果任何空白或不空白并不重要,我们将始终在最后需要删除-

或者@Jeeped说:

=MID(IF(A1<>"","-" & A1,"") & IF(A2<>"","-" & A2,"") & IF(A3<>"","-" & A3,"") & IF(A4<>"","-" & A4,"") & IF(A5<>"","-" & A5,""),2, 999999)

答案 1 :(得分:1)

如果您无法访问TEXTJOIN,则可以使用有限数量的可能字符串连接,也可以使用SUBSTITUTE和TRIM。

=SUBSTITUTE(TRIM(A2&" "&B2&" "&C2), " ", "-")

enter image description here