我有一個奇怪的情況,我正在努力解決。

我有一個不同格式的名字串列。我想要做的就是在單個字母上添加一個句點,因為它是中間名首字母。
我努力了:
=IF(LEN(A2)=1,A2&". ",IF(A2="","",A2&" "))
這有效,但會遺漏帶有“&”和另一個名稱的實體。所以在 A2 中,結果是 Michael F. & Jane J 而不是 Michael F. & Jane J。
=SUBSTITUTE(SUBSTITUTE(TRIM(A2)," &",". &")&".","..",".")
在具有單個名稱且沒有中間名首字母或單元格中沒有名稱或填充中間名的情況下,這會遇到錯誤。

有什么建議?文本到列也有效。我可以將它們分開,然后在所有四列上運行上述公式,然后連接,但這是一個低效的程序。
謝謝!
uj5u.com熱心網友回復:
在B2,公式復制下來:
=SUBSTITUTE(SUBSTITUTE(A2," &",". &")&".","..",".")

編輯 :
如果你的源資料最后一段后有空格,嘗試添加一個trim()去掉最后一個空格,公式變成>>
=SUBSTITUTE(SUBSTITUTE(TRIM(A2)," &",". &")&".","..",".")
uj5u.com熱心網友回復:
有點牽強,但使用 Excel Microsoft365,使用LET():

公式B2:
=LET(X,FILTERXML("<t><s>"&SUBSTITUTE(SUBSTITUTE(A2,"&","&")," ","</s><s>")&"</s></t>","//s"),TEXTJOIN(" ",,IF(LEN(X)=1,IF(X<>"&",X&".",X),X)))
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/398073.html
上一篇:C#將List<object>粘貼到Excel列中而無需回圈
下一篇:更改城市、州、郵編格式
