Skip to main content

在Excel列表中翻轉或反轉名字和姓氏的順序

Author: Xiaoyang Last Modified: 2025-05-12

如果您有一個全名列表,格式為姓氏和名字,現在您想將姓氏和名字的順序翻轉如下圖所示。本文將介紹一些用於處理此任務的Excel公式。

doc-flip-first-last-name-1


翻轉或反轉名字和姓氏(Stone Jerry = Jerry Stone)

通常,在Excel中,結合SEARCH函數和LEN函數使用的MID函數可以幫助您按需要翻轉名字和姓氏的順序。

如果您的全名是姓氏在前、名字在後的格式,要反轉名字和姓氏的順序,請在希望得到結果的空白單元格中應用以下公式:

=MID(A2&" "&A2,SEARCH(" ",A2)+1,LEN(A2))

然後,向下拖動填充柄到您想應用該公式的單元格,所有名字和姓氏都已反轉,如下圖所示:

doc-flip-first-last-name-2


公式解釋:

A2&" "&A2: 這部分用於連接A2單元格中的內容並用空格分隔合併的數據,您將得到結果:“Stone Jerry Stone Jerry”,這被識別為MID函數中的文字參數。

SEARCH(" ",A2)+1: SEARCH函數用於查找A2單元格中空格字符的位置,加1表示獲取空格後第一個字符的位置。這部分被識別為MID函數中的start_num參數。

LEN(A2): 此LEN函數返回A2單元格中文本的長度,它被識別為MID函數中的num_chars參數。

MID(A2&" "&A2,SEARCH(" ",A2)+1,LEN(A2)): 到目前為止,MID函數用於從“Stone Jerry Stone Jerry”中提取文本,起始位置由SEARCH函數返回,長度由LEN函數返回。


翻轉或反轉帶逗號的名字和姓氏(Stone, Jerry = Jerry Stone)

假設您的姓氏和名字之間用逗號分隔,現在您想反轉姓氏和名字的順序並跳過逗號,如下圖所示,如何在Excel中解決這個問題?

doc-flip-first-last-name-3

請複製或輸入以下公式到空白單元格中:

=MID(A2&" "&A2,SEARCH(",",A2)+2,LEN(A2)-1)

然後,向下拖動填充柄到您想應用該公式的單元格,您將得到所需的結果,見下圖:

doc-flip-first-last-name-4


公式解釋:

A2&" "&A2: 這部分用於連接A2單元格中的內容並用空格分隔合併的數據,您將得到結果:“Stone, Jerry Stone, Jerry”,這被識別為MID函數中的文字參數。

SEARCH(",",A2)+2: SEARCH函數用於查找A2單元格中逗號字符的位置,加2表示獲取逗號後第一個字符的位置。這部分被識別為MID函數中的start_num參數。

LEN(A2)-1: 此LEN函數返回A2單元格中文本的長度,減去1表示排除逗號,它被識別為MID函數中的num_chars參數。

MID(A2&" "&A2,SEARCH(",",A2)+2,LEN(A2)-1): 到目前為止,MID函數用於從“Stone, Jerry Stone, Jerry”中提取文本,起始位置由SEARCH函數返回,長度由LEN函數返回。


翻轉或反轉不帶逗號的名字和姓氏(Stone Jerry = Jerry, Stone)

要翻轉以空格分隔的名字和姓氏,在翻轉名字後,您希望在名字後添加逗號,如下圖所示。為了解決這個問題,這裡有另一個公式可以幫助您。

doc-flip-first-last-name-5

請複製或輸入以下公式到空白單元格中:

=MID(A2&", "&A2,SEARCH(" ",A2)+1,LEN(A2)+1)

然後,向下拖動填充柄到其他需要的單元格,名字已經反轉,並且在名字後插入了逗號,見下圖:

doc-flip-first-last-name-6


公式解釋:

A2&", "&A2: 這部分用於連接A2單元格中的內容並用逗號和空格分隔合併的數據,您將得到結果:“Stone Jerry, Stone Jerry”,這被識別為MID函數中的文字參數。

SEARCH(" ",A2)+1: SEARCH函數用於查找A2單元格中空格字符的位置,加1表示獲取空格後第一個字符的位置。這部分被識別為MID函數中的start_num參數。

LEN(A2)+1: 此LEN函數返回A2單元格中文本的長度,加1表示包含逗號,它被識別為MID函數中的num_chars參數。

MID(A2&", "&A2,SEARCH(" ",A2)+1,LEN(A2)+1): 到目前為止,MID函數用於從“Stone Jerry, Stone Jerry”中提取文本,起始位置由SEARCH函數返回,長度由LEN函數返回。


提示:

1. 如果您的全名包含名字、中間名和姓氏,要反轉這些名字,應該應用以下公式:

=MID(TRIM(A2)&" "&TRIM(A2),IF(LEN(TRIM(A2))-LEN(SUBSTITUTE(TRIM(A2)," ",""))=1,FIND(" ",TRIM(A2))+1,FIND(" ",TRIM(A2),FIND(" ",TRIM(A2))+1)+1),LEN(TRIM(A2)))

doc-flip-first-last-name-7

2. 要在反轉的姓氏和名字之間添加逗號,請使用以下公式:

=MID(TRIM(A2)&", "&TRIM(A2),IF(LEN(TRIM(A2))-LEN(SUBSTITUTE(TRIM(A2)," ",""))=1,FIND(" ",TRIM(A2))+1,FIND(" ",TRIM(A2),FIND(" ",TRIM(A2))+1)+1),LEN(TRIM(A2))+1)

doc-flip-first-last-name-8


使用實用功能根據任意分隔符翻轉或反轉名字和姓氏

Kutools for Excel 支持一個方便的工具 - 反轉文字功能,可以根據空格、逗號或其他任何分隔符來反轉單元格內的文字字符串順序。點擊下載 Kutools for Excel 免費試用!


相關函數:

  • MID:
  • MID 函數用於從給定的文字字符串中間找到並返回特定數量的字符。
  • SEARCH:
  • 在Excel中,SEARCH函數可以幫助您從給定的文字字符串中找到特定字符或子字符串的位置。
  • LEN:
  • LEN 函數返回文字字符串中的字符數。

更多文章:

  • 從全名中提取名字首字母和姓氏
  • 假設您有一個全名列表,現在您想從全名中提取名字首字母和姓氏,或者名字和姓氏的首字母,如下圖所示。如何在Excel工作簿中處理這些任務?
  • 從單元格中提取多行文字
  • 如果您有一列文本字符串,它們由換行符分隔(在輸入文本時按下Alt + Enter鍵產生),現在您想將這些文本行提取到多個單元格中,如下圖所示。如何在Excel中使用公式解決這個問題?

最佳的辦公生產力工具

Kutools for Excel - 幫助您脫穎而出

? Kutools AI 助手:基於智能執行生成代碼創建自訂公式分析數據並生成圖表調用 Kutools 函數…來徹底改變數據分析方式。
熱門功能查找、標記或識別重複值  |  刪除空行  |  合併列或單元格而不丟失數據  |  四捨五入無需公式 ...
超級 VLookup多條件  |  多值  |  跨多工作表  |  模糊查找...
高級下拉列表簡易下拉列表  |  依賴下拉列表  |  多選下拉列表...
列管理器添加特定數量的列  |  移動列  |  切換隱藏列的可見狀態  比較列以選擇相同和不同的單元格 ...
特色功能網格聚焦  |  設計檢視  |  增強編輯欄  |  工作簿與工作表管理器 | 資源庫(自動文本)  |  日期提取器  |  合併資料  |  加密/解密儲存格  |  按清單發送電子郵件  |  超級篩選  |  特殊篩選(篩選粗體/斜體/刪除線...) ...
頂級 15 種工具集12 個文字工具添加文本刪除特定字符 ...)  |  50+ 圖表 類型甘特圖 ...)  |  40+ 實用 公式基於生日計算年齡 ...)  |  19 個插入工具插入QR碼從路徑插入圖片 ...)  |  12 個轉換工具金額轉大寫匯率轉換 ...)  |  7 個合併與分割工具高級合併行分割Excel單元格 ...)  |  ... 還有更多

Kutools for Excel 擁有超過 300 種功能,確保您需要的功能只需點擊一下即可實現...


Office Tab - 啟用 Microsoft Office(包括 Excel)中的分頁閱讀和編輯功能

  • 一秒鐘內在數十個打開的文檔之間切換!
  • 每天為您減少數百次鼠標點擊,告別滑鼠手。
  • 當查看和編輯多個文檔時,您的工作效率提高 50%。
  • 為 Office(包括 Excel)帶來高效的分頁功能,就像 Chrome、Edge 和 Firefox 一樣。