close

2374

如何將多欄資料非數值字串合併到同一儲存格-AND、UPPER、CODE、LEFT、CONCAT、IF函數

Soumillon:「錦子老師,如下圖,我要將第2列到第5列每個人含有英文字的儲存格合併到B9:B12儲存格中,不知公式要如何設定。

謝謝。」

錦子老師:「點取B9儲存輸入公式:

=Concat(If(And(Code(Upper(Left(B2,1)))<=90,Code(Upper(Left(B2,1)))>=65),B2&" ",""), If(And(Code(Upper(Left(C2,1)))<=90,Code(Upper(Left(C2,1)))>=65),C2&" ",""), If(And(Code(Upper(Left(D2,1)))<=90,Code(Upper(Left(D2,1)))>=65),D2&" ",""), If(And(Code(Upper(Left(E2,1)))<=90,Code(Upper(Left(E2,1)))>=65),E2&" ",""))

後複製公式到B10:B12儲存格即可以。

【公式解說】

LEFT(字串,抓取字元數) 抓取字串從左邊開始幾個字元。

UPPER(英文字串) 將英文字串改成大寫。

CODE(字元) 傳回字元的ASCII碼,A65Z90a97z112

AND(條件1,條件2..條件255) 若所有條件為真則傳回TRUE,否則傳回FALSE

IF(條件,成立之動作,不成立之動作)

CONCAT(字串1,字串2…字串255) 合併各個字串組成一個字串。

Left(B2,1) 傳回B2儲存格左邊第一個字元。

Upper(Left(B2,1)) Left(B2,1)傳回字元變大寫。

Code(Upper(Left(B2,1))) 傳回Upper(Left(B2,1))ASCII碼為多少。

If(And(Code(Upper(Left(B2,1)))<=90,Code(Upper(Left(B2,1)))>=65),B2&" ","") 如果傳回ASCII碼大於等於65且小於等於90,則填入B2儲存格內容加空白字元,否則不填入資料。

部落格相關範例

2018.12.16

CONCAT

2019.10.24

2272SUMIF函數跨工作表的問題

2017.04.06

358使用Excel函數公式統計文字出現次數的方法

2020.06.26

1059EXCEL儲存格內容合併

2018.07.09

835不會這5Excel函數別說您熟練使用Excel-欄位斷字與合併函數

2019.05.29

Excel之中使用CONCATENATE時怎麼換行?

2018.11.19

1050Excel加總-EVALUATE函數

2017.12.28

606Excel中根據中國身份證字號自動生成生日和性別的方法

2017.05.25

397Excel函數實現排序與篩選的方法

2019.09.24

Q128Excel 多欄合併成一欄(參數間以空白鍵隔開)

2019.07.29

Q42EXCEL 數字型儲存格合併,並保留前置 0

2019.10.26

829EXCEL計算機

2017.04.20

415Office365裡新增的幾個Excel函數

2020.10.25

2061EXCEL 如何讓函數裡的欄位自動加1

2020.02.29

908符合條件的合併儲存格對應內容合併

2020.02.13

909這樣的Excel儲存格合併,聽說會的人只有1%-高級篇

2020.05.15

1007Excel儲存格非重覆資料合併

2019.08.21

F03函數綜合應用大雜燴-文字函數

2018.11.26

1053Excel 文字數值加總

2020.02.11

909這樣的Excel儲存格合併,聽說會的人只有1%-基礎篇

2019.12.19

Y2018西元2018年相關範例

2019.12.19

Y2019西元2019年相關範例

2012.01.30

EXCEL 各函數功能說明

 


arrow
arrow
    創作者介紹

    錦子老師 發表在 痞客邦 留言(0) 人氣()