KutoolsforOffice — 一套方案,五大工具。事半功倍。三月特賣:20% 折扣

如何在 Excel 中縮寫姓名或單字:完整指南

作者Xiaoyang修改日期

當您在 Excel 中處理員工名單、聯絡人資料庫或長篇文字項目時,全名或詞組有時會佔用過多空間,導致資料難以閱讀。在許多情況下,顯示縮寫姓名或姓名首字母(如以下截圖所示)會更加清晰便利。
縮寫姓名不僅提升可讀性、簡化報表,還能在大型資料集中建立一致的格式。本指南將介紹幾種實用方法,協助您透過公式、VBA 及生產力工具,輕鬆在 Excel 中提取姓名首字母或縮短姓名!

縮寫姓名或字詞

為什麼要在 Excel 中縮寫姓名或單字?

從全名提取首字母

從全名提取帶句點的首字母

將姓名轉換為首字母+姓氏

結論


為什麼要在 Excel 中縮寫姓名或單字?

縮寫不僅能節省空間,更兼顧標準化與易用性。

  • 標準化:為姓名建立統一格式(例如員工編號或客戶代碼),確保資料一致、提升管理效率!
  • 節省空間:將中間名縮寫為首字母,可縮窄欄寬,讓報表更易讀!
  • 數據分析:有時您只需輸入姓名的首字母與姓氏,就能依特定方式排序或篩選資料!
  • 匿名化:使用姓名首字母,有效保護共用文件中的隱私。

從全名提取首字母

在 Excel 中,最常見的縮寫情境莫過於將全名轉換為其核心首字母。無論您是要生成使用者 ID、製作姓名縮寫標誌,還是僅為報告標準化清單,從姓名各部分提取首字母都是一項基本的資料處理任務。以下我們將介紹三種不同的實現方式。

 

方法一:透過公式從全名提取首字母

使用公式是從 Excel 全名中提取首字母最有效的方法之一。透過內建的文字函數,Excel 能自動識別姓名中的每個字詞,並傳回各字詞的首字母。此方法具備動態特性,當原始姓名變更時,結果會自動更新。根據您使用的 Excel 版本,可採用不同的公式來達成此目的。

⭐ 適用於 Excel 365 的公式:

若您使用的是 Excel 365,運用 TEXTSPLIT 與 TEXTJOIN 等現代函數,提取姓名首字母將更加輕鬆簡便。這些函數能將全名拆分為獨立單字,再將每個單字的首字母合併成單一結果,方法簡單又靈活,無論姓名長短皆可輕鬆應對。

在空白儲存格中輸入下列公式,然後向下拖曳填滿控點,即可套用至其他儲存格。

=TEXTJOIN("",TRUE,LEFT(TEXTSPLIT(A2," "),1))

在 Excel 365 中從全名提取首字母

公式說明
  • TEXTSPLIT(A2," "):依據空格將全名拆分為獨立單字。
  • LEFT(...,1):提取每個單字的首字母。
  • TEXTJOIN("",TRUE, … ):將字母合併為不含空格的單一字串。
優點
  • 適用於任意數量的單字
  • 簡潔且具動態性
  • 當原文本變更時自動更新

⭐ 適用於所有 Excel 版本的公式:

即使使用較舊版本的 Excel,您依然能透過 LEFT、MID、FIND 與 SUBSTITUTE 等傳統函數輕鬆提取首字母。

在空白儲存格中輸入下列公式,然後向下拖曳填滿控點,即可套用至其他儲存格。

=IFERROR(TRIM(LEFT(A2,1)&MID(A2,FIND(" ",A2&" ")+1,1)&MID(A2,FIND("*",SUBSTITUTE(A2&" "," ","*",2))+1,1)), "")

在所有 Excel 版本中從全名提取首字母

公式說明
  • LEFT(A2, 1):擷取字串的第一個字元(即名字的首字母縮寫)。
  • MID(A2, FIND(" ", A2 & " ") + 1, 1):找出第一個空格,並透過加 1 跳至第二個單字的開頭,擷取一個字元。
  • MID(A2,FIND("*",SUBSTITUTE(A2&" "," ","*",2))+1,1): SUBSTITUTE(A2," ","*",2):將第二個空格替換為 *,再由 FIND 找出該符號位置,MID 即可擷取第三個單字的首字母。
  • TRIM(...):若姓名僅包含兩個字,則自動移除後方多餘空格。
  • IFERROR(..., ""):確保儲存格在空白或邏輯運算失敗時,仍維持空白狀態,而不會顯示 #VALUE! 錯誤。
限制:
  1. 僅支援由 1 至 3 個字組成的姓名;超過第 3 個字的部分將被忽略。
  2. 若資料包含連續空格,或前後有多餘空格,此公式容易出錯,因為這些空格會干擾 FIND 函數的邏輯運作。
  3. 由於需針對舊版 Excel 採取變通做法,公式過於複雜,非專業使用者難以修改或維護。
 

方法二:透過使用者自訂函數從全名提取首字母

若您經常處理包含不同單字數量的姓名,在 VBA 中使用 使用者自訂函數(UDF)將是極具彈性的解決方案!相較於傳統公式通常假設姓名結構固定,自訂函數能自動提取每個單字的首字母,無論姓名包含多少單字都不受影響。

  1. 按下 Alt + F11,立即開啟 VBA 編輯器
  2. 按一下插入 > 模組,然後將下列程式碼複製並貼上至模組視窗:
Function AbbreviateString(strC As String) As String
Dim Text() As String
Dim x As Byte, y As Byte
Dim strAbbr As String
Text() = Split(strC, " ")
x = UBound(Text())
If x > 0 Then
For y = 0 To x
strAbbr = strAbbr & UCase(Left(Text(y), 1))
Next y
Else
strAbbr = strC
End If
AbbreviateString = strAbbr
End Function
  1. 返回工作表,在空白儲存格中輸入下列公式,然後向下拖曳填滿控點,即可套用至其他儲存格。
=AbbreviateString(A2)

使用 VBA UDF 提取首字母

優點
  • 此函數可直接從包含兩個、三個或更多字的姓名中擷取縮寫,無需調整公式。
  • 建立後,此函數即可像 Excel 內建函數一樣使用,並能隨時重複套用。
 

方法三:透過 Kutools for Excel 從全名提取首字母

若您偏好無需記憶或手動撰寫公式的解決方案,不妨使用公式助手功能(內建於 )Kutools for Excel)!此工具提供直覺化的視覺介面,只需選擇所需操作並點選相關儲存格,系統便會立即為您自動生成對應公式,輕鬆又高效!

下載並安裝 Kutools for Excel 後,請依下列步驟操作:

  1. 按一下您要用來輸出結果的空白儲存格。
  2. 點擊 Kutools > 公式助手 > 公式助手
  3. 公式助手對話方塊中,從縮寫名稱或單詞清單中選取一個公式,然後在文字欄位中指定包含欲縮寫文字的儲存格。
  4. 接著點擊確定

使用 Kutools 公式助手提取首字母

結果

對應的首字母將自動生成,接著可向下拖曳公式,套用至其他儲存格。

使用 Kutools 公式助手提取首字母

使用 Kutools for Excel 簡化 Excel 公式

Kutools for Excel 提供強大的公式助手,內建數十種常用公式!無需記憶複雜的 Excel 函數,只需選擇所需公式並填入必要欄位,Kutools 就能自動為您生成公式,讓工作更快速、更輕鬆!

  • 無需記憶複雜的公式
  • 公式生成透過簡潔直覺的視覺化介面
  • 內建數十種常用 Excel 任務的公式

從全名提取帶句點的首字母

在某些情況下,首字母會以句點分隔顯示,例如 M.J.W.而非 MJW。此格式廣泛應用於學術寫作、正式文件及聯絡人清單中,讓首字母更清晰、視覺上更易辨識!

在 Excel 中,您只需提取全名中每個字的首字母,並在字母之間加入句點,即可輕鬆產生此格式。以下方法示範如何自動建立帶句點的首字母縮寫,所用公式同時適用於 Excel 365 及早期版本。

⭐ 適用於 Excel 365 的公式:

若您使用的是 Excel 365,可使用下列公式:

=TEXTJOIN(".",TRUE,LEFT(TEXTSPLIT(A2," "),1))&"."

接著按下 Enter,並向下拖曳填滿控點,即可將公式套用至其他儲存格。

從帶有句點的全名中提取首字母

公式說明
  • TEXTSPLIT(A2," "):根據空格將全名拆分為獨立單字。
  • LEFT(...,1):提取每個單字的首字母。
  • TEXTJOIN(".",TRUE, … ):以句點作為分隔符號,輕鬆合併縮寫字母。
  • &“。“:於結尾處加上最終的句點。
優點
  • 適用於任意數量的單字
  • 公式簡短且易於理解
  • 當原始姓名變更時自動更新

⭐ 適用於所有 Excel 版本的公式:

若您使用的是 Excel 2019、Excel 2016 或更早版本,可使用下列公式:

=UPPER(LEFT(A2,1)&"."&MID(A2,FIND(" ",A2)+1,1)&IFERROR("."&MID(A2,FIND(" ",A2,FIND(" ",A2)+1)+1,1),"")&IFERROR("."&MID(A2,FIND(" ",A2,FIND(" ",A2,FIND(" ",A2)+1)+1)+1,1),"")&".")
公式說明
  • UPPER(...):將所有文字轉換為大寫,確保縮寫字母一律以大寫呈現。
  • LEFT(A2,1)&".":擷取名字首字母並加上句點。
  • MID(A2,FIND(" ",A2)+1,1):找出第一個空格,並擷取緊接其後的字元。
  • IFERROR("."&MID(A2,FIND(" ",A2,FIND(" ",A2)+1)+1,1),""):找出第二個空格後的下一個縮寫字母並加上句點;若無第二個空格,則傳回空白,避免顯示錯誤。
  • IFERROR("."&MID(A2,FIND(" ",A2,FIND(" ",A2,FIND(" ",A2)+1)+1)+1,1),""):重複相同邏輯,找出第三個空格後擷取第四個單字的首字母縮寫。
  • &“。“:在結果末尾附加一個句號。
限制
  1. 此公式專為從最多四個單字中提取首字母而設計;若姓名包含超過四個單字,多餘的部分將自動忽略。
  2. 若姓名單字之間包含多個空格,或開頭有多餘空格,FIND 函數可能會計算錯誤的位置,導致提取出錯誤的首字母。
  3. 此公式相對複雜,不易修改或維護。

將姓名轉換為首字母+姓氏

有時您可能希望縮短全名,僅顯示名字首字母與姓氏,例如將 「Michael James Walker」轉換為 「M. Walker」。此格式廣泛應用於聯絡人清單、報告及目錄中,讓姓名更簡潔易讀!

在 Excel 中,您可透過公式自動提取名字的首字母並與姓氏結合,輕鬆達成此效果。

⭐ 適用於 Excel 365 的公式:

若您使用的是 Excel 365,即可運用 TEXTSPLITCHOOSECOLS 函數,將姓名視為多個部分的集合,而非單一長字串!

將下列公式複製並貼上至空白儲存格:

=LEFT(A2, 1) & ". " & CHOOSECOLS(TEXTSPLIT(A2, " "), -1)

接著按下 Enter,並向下拖曳填滿控點,即可將公式套用至其他儲存格。

將姓名轉換為名字首字母+姓氏

公式說明
  • TEXTSPLIT(A2, " "):根據空格將姓名拆分為清單。
  • CHOOSECOLS(..., -1)-1 告訴 Excel 傳回最後一欄,無論中間有多少欄位。
  • LEFT(A2,1):提取名字首字母。

⭐ 適用於所有 Excel 版本的公式:

若您使用的是舊版 Excel,可使用下列通用公式:

=LEFT(A2,1)&". "&TRIM(RIGHT(SUBSTITUTE(A2," ",REPT(" ",100)),100))
公式說明
  • LEFT(A2,1):提取首字母。
  • SUBSTITUTE(A2," ",REPT(" ",100)):將空格替換為多個空格,輕鬆隔離最後一個單字。
  • RIGHT(...,100):提取最後一個單字區域。
  • TRIM():移除多餘空格,立即取得乾淨的姓氏!

結論

在 Excel 中縮寫姓名或文字時,關鍵在於掌握視覺清晰度資訊完整性之間的完美平衡。本文提供的方法,助您依實際需求輕鬆選出最適合的解決方案!

  • 適用於自動化與動態更新:
    優先採用 Excel 365 動態陣列公式,例如 TEXTSPLIT!這些公式不僅易於理解,更能自動處理不同字數的姓名,是現代工作流程的首選方案。
  • 適用於舊版 Excel 相容性或團隊協作:
    使用 FINDMID 等函數的傳統公式雖然較為複雜,卻能確保解決方案在幾乎所有 Excel 版本中穩定運作,具備高度通用性!
  • 適用於大型資料集或複雜的姓名處理規則:
    VBA 使用者自訂函數(UDF)提供最強大的解決方案!不僅能輕鬆應對連字號姓名、頭銜篩選等特殊情境,一旦建立完成,更可像內建 Excel 函數一樣,在整個工作表中重複使用,大幅提升效率!

💡 注意事項與提示:

  • 確保姓名以空格分隔:
    大多數公式會依據空格辨識單字,請務必讓姓名的每個部分(名字、中間名、姓氏)皆以單一空格分隔,才能正確運作!
  • 套用公式前,先移除多餘空格:
    開頭的空格或多個連續空格會導致錯誤結果!建議您先使用 TRIM 函數清理資料,確保計算準確無誤。
  • 選擇符合您 Excel 版本的方法:
    現代 Excel 版本(例如 )Excel 365/2021)內建 TEXTSPLITTEXTJOIN 等函數,可大幅簡化公式並提升彈性;舊版 Excel 則建議使用傳統公式或 VBA,效果更佳。
  • 針對大型資料集使用自動化工具:
    若您經常處理大量名稱列表,Kutools for Excel 等工具可協助您快速提取首字母,無需撰寫複雜公式。