【如何將姓名中間字改成○】
今天一位學員問我,怎麼快速將大量姓名中間的字換成○?
其實解決問題的方法很多,越白話越簡單越好記…
以下列舉2個方式來解決這個問題:<可使用第2個方式,但不能不熟悉第1個方式,哈哈>
1. 用左邊第1個字 + ○ + 右邊第1個字
(這是最直覺最白話的方式)
= LEFT(B3,1) & "○" & RIGHT(B3,1) '這叫直譯式寫法,哈哈!
但若名字有4個(甚至更多)或只有2個字呢?
可以加入長度的判斷來決定
= LEFT(B3,1) & IF(LEN(B3)>3,"○",LEFT("○○○○",LEN(B3)-2)) & IF(LEN(B3)>2,RIGHT(B3,1),"")
其中
.IF(LEN(B3)>3,"○",LEFT("○○○○",LEN(B3)-2))
→若姓名長度>3(四個字以上),就換長度-2個○(目前最多是6個字)
.IF(LEN(B3)>2,RIGHT(B3,1),"")
→若姓名長度>2,就放入姓名最後一個字(也就是說2個字的,就不放最後一個字)
2. 用置換的方式,將中間的字換成○
利用REPLACE函數,將指定位置的字元替換成○
= REPLACE(原字串 , 從第幾碼開始替換 , 替換幾個字元 , 替換的文字 )
= REPLACE(B3,2,1,"○")
同樣的,針對姓名2個字或4個字以上的增加判斷處理
= REPLACE( B3 , 2 , IF(LEN(B3)>3,LEN(B3)-2,1) , IF(LEN(B3)<3,"○",LEFT("○○○○",LEN(B3)-2)) )
其中
.IF(LEN(B3)>3,LEN(B3)-2,1)
→若姓名長度>3,則替換掉長度-2的字元(4個字替換掉中間2個字)
.IF(LEN(B3)<3,"○",LEFT("○○○○",LEN(B3)-2))
→若長度<3,僅替換1個○,否則替換長度-2個○(4個字中間替換成2個○)
章老師的電腦小講堂 https://www.facebook.com/ScenicSchool/
※※ 本區做為經常使用之程式碼複製區,提問請至小講堂唷 ※※
同樣的,針對姓名2個字或4個字以上的增加判斷處理
= REPLACE( B3 , 2 , IF(LEN(B3)>3,LEN(B3)-2,1) , IF(LEN(B3)<3,"○",LEFT("○○○○",LEN(B3)-2)) )
其中
.IF(LEN(B3)>3,LEN(B3)-2,1)
→若姓名長度>3,則替換掉長度-2的字元(4個字替換掉中間2個字)
.IF(LEN(B3)<3,"○",LEFT("○○○○",LEN(B3)-2))
→若長度<3,僅替換1個○,否則替換長度-2個○(4個字中間替換成2個○)
章老師的電腦小講堂 https://www.facebook.com/ScenicSchool/
※※ 本區做為經常使用之程式碼複製區,提問請至小講堂唷 ※※