有没有办法从串联结果中删除空换行符?

Is there a way to remove empty line break from a concatenation result?

我使用换行符将不同行的单元格连接成一个单元格 (char(10))。因为正在连接具有空字段的单元格,所以这会在此过程中添加空行。有没有办法修改我的公式以删除那些空行?

    =IF(COUNTBLANK(A2);"";CONCATENATE(E2; CHAR(10); D2; CHAR(10); C2; CHAR(10); F2; CHAR(10); G2; CHAR(10); H2; CHAR(10); I2))

如果您使用的特定命令不重要并且您有 OFFICE 365 Excel 那么您可以使用 TEXTJOIN:

=IF(A2="","",TEXTJOIN(CHAR(10),TRUE,C2:I2)

如果这很重要并且您有 OFFICE 365,那么您可以使用 TEXTJOIN 作为数组公式:

=IF(A2="","",TEXTJOIN(CHAR(10),TRUE,CHOOSE({1,2,3,4,5,6,7},E2,D2,C2,F2,G2,H2,I2))

作为数组公式,退出编辑模式时必须使用 Ctrl-Shift-Enter 而非 Enter 确认。


如果您没有 Office 365,则需要连接一串 IF

IF(E2<>"",CHAR(10) & E2,"") & IF(D2<>"",CHAR(10) & D2,"") & ...

将其包裹在中间以删除第一个 CHAR(10)

MID(IF(E2<>"",CHAR(10) & E2,"") & IF(D2<>"",CHAR(10) & D2,"") & ...,2,999)