2015-10-23 262 views
0

例如:=i8&", "&i9&", "&i10 but don't add ", " for any Empty cells
如果所有(三個)單元都有數據,則結果爲:data, data, data使用逗號和空格連接單元格,除非單元格爲空白/空白

沒有結果我想要的,但我得到:, , data(在前面兩個單元格爲空)。

TRIM不刪除, ,,也沒有查找/替換。

要加入三列我用:

=i8 & i9 & i10 

爲了打破他們與一個逗號和空格我用:

=i8 & ", " & i9 & ", " & i10 

但是當其中一個單元格是空的我不希望「,」在來自後續列的信息之前「,」當它是兩個空單元格時「。

我試圖對逗號和空格進行排序,但有時搜索沒有發現任何內容。此外,當存在數據時,我不想替換'逗號空間'。我嘗試了TRIM,但這並沒有幫助,因爲它似乎沒有任何作用,即使這只是爲了刪除一個空的空間。

除非有人對此有可靠的TRIM聲明嗎?

我寧願有一個跳過空白單元格,不包括「」(逗號和空格),那裏是沒有數據的聲明。

基本上想法正在加入三個電話號碼: 「家庭工作細胞」 到 「(515)555-1234(H),515 555-9876(W)等。」

回答

0

可以使用:

  1. 連接具有一個空間
  2. 然後TRIM()
  3. 然後替代

    = SUBSTITUTE(TRIM(A1 & 「」 & B1 & 「」 & C1),「」,「,」)

enter image description here

+0

如果任何單元格包含空格,則會導致問題。我會建議先用NBSP替換那些內部空間。例如:'= SUBSTITUTE(TRIM(SUBSTITUTE(A1,「」,CHAR(160))&「」&SUBSTITUTE(B1,「」,CHAR(160))&「」&SUBSTITUTE(C1,「」,CHAR(160) )),「」,「,」)' –

+0

@RonRosenfeld一個非常好的建議! –

0

我會做這樣的事情:

=TRIM(SUBSTITUTE(IF(ISBLANK(I8), "", I8&", ") & 
       IF(ISBLANK(I9), "", I9&", ") & 
       IF(ISBLANK(I10), "", I10&", ") & " ", 
       ", ", 
       "")) 

使用ISBLANK()非空單元格添加了後面的逗號,然後用SUBSTITUTE()刪除最後一個逗號。最後一個TRIM()刪除任何尾隨空格。

Sample: 
I8) Home (515) 555-1234 (H) 
I9) Work 515 555-9876 (W) 
I10) Cell <blank> 

Output: 
(515) 555-1234 (H), 515 555-9876 (W)