Note: The other languages of the website are Google-translated. Back to English

如何在Excel中的單元格中翻轉名字和姓氏?

假設您在一個列中獲得了一個名冊,但是,您需要翻轉單元格中的名字和姓氏。 通常,您將進入一個單元格並剪切姓氏,然後將其粘貼在名字之前,或再次輸入該名稱。 如果使用這些傳統方法,將非常耗時且乏味。 實際上,有幾種簡單的方法可以快速翻轉或反轉單個列中的名字和姓氏。 假設您有一列名稱,並且您需要翻轉名字和姓氏,如下圖所示:
doc翻轉姓氏1

使用功能翻轉列中的名字和姓氏

使用VBA翻轉列中的名字和姓氏

使用Kutools for Excel翻轉列中的名字和姓氏好主意3

使用Kutools for Excel將全名分為名字和姓氏好主意3


使用功能翻轉列中的名字和姓氏

我們可以使用Excel的一個公式,通過以下步驟在列中快速翻轉名字和姓氏:

 輸入公式 =MID(A2&" "&A2,FIND(" ",A2)+1,LEN(A2)) 單元格C2說,在一個空白單元格中。 然後將填充手柄向下拖動到單元格以應用此公式,然後您將看到所有姓氏和名字都得到了尊敬。 看截圖:

doc翻轉姓氏2


使用VBA翻轉列中的名字和姓氏

您還可以使用VBA宏快速翻轉列中的名字和姓氏。

1. 按住 Alt + F11鍵 鍵,然後打開 Microsoft Visual Basic for Applications 窗口。

2.  點擊 插入 > 模塊,然後將以下宏粘貼到 模塊 窗口。

Sub FlipName()
'Updateby20131126
Dim Rng As Range
Dim WorkRng As Range
Dim Sign As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Sign = Application.InputBox("Symbol interval", xTitleId, " ", Type:=2)
For Each Rng In WorkRng
    xValue = Rng.Value
    NameList = VBA.Split(xValue, Sign)
    If UBound(NameList) = 1 Then
        Rng.Value = NameList(1) + Sign + NameList(0)
    End If
Next
End Sub

3。 按 F5 運行此宏的鍵。 在彈出 Kutoolsfor Excel 對話框,選擇要翻轉的範圍,然後單擊 OK 按鈕。 看截圖:

doc翻轉姓氏3

4。 在以下彈出對話框中,請輸入一個間隔符號(例如空格),然後單擊 OK 按鈕。 看截圖:

doc翻轉姓氏4

5。 現在,將翻轉所選範圍內的名字和姓氏。 看截圖:

doc翻轉姓氏5


使用Kutools for Excel翻轉列中的名字和姓氏

這款獨特的敏感免洗唇膜採用 Moisture WrapTM 技術和 Berry Mix ComplexTM 成分, Excel的KutoolsReverse Text Order,您可以快速反轉單元格中文本的順序。

Excel的Kutools:便捷的Excel加載項工具,使您的工作更加輕鬆和高效。
  • 300+ 功能強大且易於使用的功能,110,000+ Excel用戶的選擇
  • 功能齊全 免費試用 30,無需信用卡
  • 多種一鍵式功能,可縮短您解決複雜問題的時間
  • 包括批量轉換,刪除,合併工作表/單元格,展開等功能,現在免費嘗試。

安裝後 Kutools for Excel,請執行以下操作:(立即免費下載Kutools for Excel!)

1.  選擇要反轉名字和姓氏的範圍。

2.  點擊 庫工具 > Text > Reverse Text Order,請參見屏幕截圖:

doc翻轉姓氏8

3。 在裡面 Reverse Text 對話框中,使用分隔符指定所選文本字符串的分隔符(在這種情況下,我選擇 Space 選項),然後單擊 OK 按鈕。 所選範圍內的所有名字和姓氏都被顛倒了。 看截圖:

doc翻轉姓氏7

備註:檢查 Skip non-text 單元格,以防止您反轉所選範圍內的數字。


演示:翻轉/反轉單元格中的名字和姓氏


使用Kutools for Excel將全名分為名字和姓氏

安裝後 Kutools for Excel,請執行以下操作:(立即免費下載Kutools for Excel!)

如果您有一個全名列表,需要在兩欄中分別拆分為名字和姓氏,如下面的屏幕截圖所示,則可以將Kutools for Excel應用到 Split Names 快速處理它。
doc翻轉姓氏9

1.選擇要拆分的名稱列表,單擊 庫工具 > Merge & Split > Split Names.
doc翻轉姓氏10

2。 在裡面 Split Names 對話框,檢查 First name Last name 複選框,如果您也想拆分中間名,請選中 Middle name。 點擊 Ok,選擇一個單元格以放置拆分名稱。
doc翻轉姓氏11



Kutools for Excel:Excel 中必須具備的 300 多個功能, 30- 從這裡開始免費試用。


最佳辦公效率工具

Kutools for Excel 解決了你的大部分問題,並將你的生產力提高了 80%

  • 重用: 快速插入 複雜的公式,圖表 以及您以前使用過的任何東西; 加密單元 帶密碼 創建郵件列表 並發送電子郵件...
  • 超級公式欄 (輕鬆編輯多行文本和公式); 閱讀版式 (輕鬆讀取和編輯大量單元格); 粘貼到過濾範圍...
  • 合併單元格/行/列 不會丟失數據; 拆分單元格內容; 合併重複的行/列...防止細胞重複; 比較範圍...
  • 選擇重複或唯一 行; 選擇空白行 (所有單元格都是空的); 超級查找和模糊查找 在許多工作簿中; 隨機選擇...
  • 確切的副本 多個單元格,無需更改公式參考; 自動創建參考 到多張紙; 插入項目符號,複選框等...
  • 提取文字,添加文本,按位置刪除, 刪除空間; 創建和打印分頁小計; 在單元格內容和註釋之間轉換...
  • 超級濾鏡 (將過濾方案保存並應用於其他工作表); 高級排序 按月/週/日,頻率及更多; 特殊過濾器 用粗體,斜體...
  • 結合工作簿和工作表; 根據關鍵列合併表; 將數據分割成多個工作表; 批量轉換xls,xlsx和PDF...
  • 超過 300 項強大的功能. 支持 Office / Excel 2007-2021 和 365。支持所有語言。 在您的企業或組織中輕鬆部署。 完整功能 30 天免費試用。 60 天退款保證。
kte選項卡201905

Office選項卡為Office帶來了選項卡式界面,使您的工作更加輕鬆

  • 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
  • 在同一窗口的新選項卡中而不是在新窗口中打開並創建多個文檔。
  • 將您的工作效率提高 50%,每天為您減少數百次鼠標點擊!
officetab底部
按評論排序
留言 (40)
還沒有評分。 成為第一位評論!
網站主持人對此評論進行了最小化
這些都不起作用,除了這個人賣的東西
網站主持人對此評論進行了最小化
第一個公式完美運行。
網站主持人對此評論進行了最小化
我了解公式的每個部分的作用(MID、FIND 和 LEN),但我不明白為什麼它實際上會顛倒名稱。 有人可以向我解釋一下嗎?
網站主持人對此評論進行了最小化
[quote]我了解公式的每個部分的作用(MID、FIND 和 LEN),但我不明白為什麼它實際上會顛倒名稱。 有人可以向我解釋一下嗎?通過 CJC[/quote] 下面是使用的公式: MID(A1&" "&A1,FIND(" ",A1)+1,LEN(A1)) Mid 函數有這些組件: Mid("text to use", where to start ,要選擇的字符數)它的工作原理是獲取 A1 的內容並將它的兩個副本放在一起,用空格分隔(即 A1&" "&A1 = "Jim Green Jim Green"。)下一步然後跳過第一個單詞(即 Find(" ", A1)+1 = "Jim ",因此在淨效應中,您可以使用“Green Jim Green”。)最後一步選擇原始字符串的長度(即 Len("Jim Green" ) = 9) 從連接字符串的剩餘部分減去名字(即“Green Jim Green”)希望這是有道理的。
網站主持人對此評論進行了最小化
遺憾的是,如果名稱包含中間名首字母或中間名,則原始公式無法正常工作。 因此,當您真正想要“Green Jim R”時,“Jim R Green”會為您提供“R Green Jim”。 允許這種情況發生的公式是: =MID(A1&" "&A1,IF(LEN(A1)-LEN(SUBSTITUTE(A1," ",""))=1,FIND(" ",A1)+1 ,FIND(" ",A1,FIND(" ",A1)+1)+1),LEN(A1)) 我對原始公式所做的只是添加一個測試以查看原始名稱是否包含超過1 個空格,如果是這樣,從第二個空格開始我的中間功能。 請注意,它仍然不完美,因為它沒有考慮“Jr.”、“Sr.”。 或“III”等在姓之後,但更好。 要記住的另一件事是,如果您的數據不是 100% 乾淨並且包含前導或尾隨空格,例如“Jim R Green”,您將需要使用 TRIM 命令來清理它。 如果你不這樣做,它會丟棄空格數並給你一個“#value!” 錯誤。 使用它來確保沒有前導或尾隨空格影響您的結果: =MID(TRIM(A1)&" "&TRIM(A1),IF(LEN(TRIM(A1))-LEN(SUBSTITUTE(TRIM(A1)," ", ""))=1,FIND(" ",TRIM(A1))+1,FIND(" ",TRIM(A1),FIND(" ",TRIM(A1))+1)+1),LEN(TRIM (A1))) 您還可以更改公式以在姓氏和名字之間包含逗號,例如“Green, Jim R”,使用以下命令:=MID(TRIM(A1)&", "&TRIM(A1) ,IF(LEN(TRIM(A1))-LEN(SUBSTITUTE(TRIM(A1)," ",""))=1,FIND(" ",TRIM(A1))+1,FIND(" ",TRIM( A1),FIND(" ",TRIM(A1))+1)+1),LEN(TRIM(A1))+1) 希望對您有所幫助!
網站主持人對此評論進行了最小化
雖然原始公式不適用於多個名字或名字 + 中間名首字母縮寫(例如前面提到的 Jim R. Green 或 Lee Harvey Oswald),但它確實適用於多部分姓氏,例如 James Van Der比克 -> 范德比克詹姆斯。 如果您有一個或兩個實例同時具有多個名字或中間名以及多個姓氏,那麼您最好手動處理這些實例。 或者修剪掉多餘的中間名,或者將名字和姓氏保存在單獨的列中,然後隱藏這些列並根據需要組合它們以進行顯示。
網站主持人對此評論進行了最小化
這是一個非常好的 catch JS,一個我沒想過測試的例子。 還有另一種解決方法可以幫助解決這個問題,那就是使用不間斷的空格來分隔多部分姓氏。 您可能已經看到在 HTML 代碼中使用 &NBSP。 您可以通過按住 ALT 鍵並使用小鍵盤鍵入數字“0160”在單元格中插入一個不間斷的空格。 我試過了,效果很好。
網站主持人對此評論進行了最小化
請幫助 如果多個名字或姓氏 示例 Nick Van Exel 應顯示為 VanExel,Nick Luis Alfred D. Chua 應顯示為 Chua,Luis D. Chua,Alfred D. Jason D. Lee-Parks 應顯示為 LeeParks,Jason D .
網站主持人對此評論進行了最小化
感謝 Mike Gagne,它對我有很大幫助。 我有全名的大數據庫,我必須先按姓氏對其進行排序。 它在這項工作上給了我很大的幫助。 再次感謝你。 :哈哈:
網站主持人對此評論進行了最小化
[quote]遺憾的是,如果名稱包含中間名首字母或中間名,則原始公式無法正常工作。 因此,當您真正想要“Green Jim R”時,“Jim R Green”會為您提供“R Green Jim”。 允許這種情況發生的公式是: =MID(A1&" "&A1,IF(LEN(A1)-LEN(SUBSTITUTE(A1," ",""))=1,FIND(" ",A1)+1 ,FIND(" ",A1,FIND(" ",A1)+1)+1),LEN(A1)) 我對原始公式所做的只是添加一個測試以查看原始名稱是否包含超過1 個空格,如果是這樣,從第二個空格開始我的中間功能。 請注意,它仍然不完美,因為它沒有考慮“Jr.”、“Sr.”。 或“III”等在姓之後,但更好。 要記住的另一件事是,如果您的數據不是 100% 乾淨並且包含前導或尾隨空格,例如“Jim R Green”,您將需要使用 TRIM 命令來清理它。 如果你不這樣做,它會丟棄空格數並給你一個“#value!” 錯誤。 使用它來確保沒有前導或尾隨空格影響您的結果: =MID(TRIM(A1)&" "&TRIM(A1),IF(LEN(TRIM(A1))-LEN(SUBSTITUTE(TRIM(A1)," ", ""))=1,FIND(" ",TRIM(A1))+1,FIND(" ",TRIM(A1),FIND(" ",TRIM(A1))+1)+1),LEN(TRIM (A1))) 您還可以更改公式以在姓氏和名字之間包含逗號,例如“Green, Jim R”,使用以下命令:=MID(TRIM(A1)&", "&TRIM(A1) ,IF(LEN(TRIM(A1))-LEN(SUBSTITUTE(TRIM(A1)," ",""))=1,FIND(" ",TRIM(A1))+1,FIND(" ",TRIM( A1),FIND(" ",TRIM(A1))+1)+1),LEN(TRIM(A1))+1) 希望對您有所幫助!邁克·加涅[/quote] 你能幫我解決這個問題嗎? 原來的 14D-E13111-00 我希望它是 E13111-14D-00 非常感謝...
網站主持人對此評論進行了最小化
我想要 20140115 到 15012014
網站主持人對此評論進行了最小化
宏對我有用。 謝謝!
網站主持人對此評論進行了最小化
謝謝 - 工作得很好,為我節省了很多時間!
網站主持人對此評論進行了最小化
第一個公式效果很好(一旦我擺脫了中間名)。 但是現在我想按字母順序排列它不會這樣做.......因為單元格中有一個公式?
網站主持人對此評論進行了最小化
因此,您可以通過一種冗長的方式將 Lastname, Firstname Middle 的格式更改為 Firstname Middlename Lastname。 假設 Lastname, Firstname Middle 在單元格 A1 中。 突出顯示姓氏、名字中間名所在的單元格/列。單擊“數據”選項卡->“文本到列”。 選擇“定界”下一步-> 單擊清單中所有適用的項,然後雙擊名字和第二名之間的行將其刪除,下一步-> 完成。 現在 Lastname 仍在 A1 中,Firstname Middlename 在 B2 中。 在一個新的單元格(比如 C1)中使用 forumla =Concatenate(B1," ",A1) 並且名稱現在將讀作“Firstname Middlename Lastname”(注意開頭的空格)。 我另一個單元格(比如說 D1)使用 =TRIM(C1) 刪除空間。 你完成了! 我確信有一個更簡單的過程,但這對我有用。 乾杯!
網站主持人對此評論進行了最小化
你好,如何將姓氏,名字格式的名字反轉為名字姓氏讓我們說保羅,約翰=約翰保羅
網站主持人對此評論進行了最小化
切換最後一個,第一個實際上更容易一些,因為我們有那個逗號來幫助我們。 假設名稱在單元格 A1 中,使用的公式為:TRIM(RIGHT(A1,LEN($A1)-FIND(",",A1,1)))&" "&TRIM(LEFT(A1,FIND(" ,",A1,1)-1)) 我將 TRIM 命令放在名字和姓氏上,以確保兩者之間只有一個空格。 可能不需要姓氏上的 TRIM,但您永遠不知道空格是否可能是單元格的第一個字符,或者逗號之前是否有空格。
網站主持人對此評論進行了最小化
我想要excel更新
網站主持人對此評論進行了最小化
一個建議 - 為了鼓勵良好的編程實踐(選項顯式),請調暗所有變量。
網站主持人對此評論進行了最小化
請幫助我需要一個公式將 Alexa Victoria G. Garcia 翻轉到 Garcia,Alexa Victoria G. 請幫助 :) 謝謝
網站主持人對此評論進行了最小化
謝謝!!!!! 這個公式為我節省了很多時間。 我相信我會一次又一次地使用它。
網站主持人對此評論進行了最小化
如果你有中間名,你如何翻轉姓氏? 下面的例子。 姓氏 - 名字 - 中間名
網站主持人對此評論進行了最小化
將 +1 改為比中間名大的兩個數字,而不是 +XNUMX。 這對我有用。

阿雷夫
網站主持人對此評論進行了最小化
更正。 如果我有四個名字怎麼辦? 公式是什麼? 姓氏 - 名字 - 中間 1 - 中間 2
網站主持人對此評論進行了最小化
如果兩個名字之間用逗號隔開怎麼辦? 有沒有辦法消除它? 現在名字看起來像

阿瑟·蘭格

埃里克·諾里斯,

等等等等
網站主持人對此評論進行了最小化
我也想知道這個!
網站主持人對此評論進行了最小化
您是否嘗試過 Ctrl+F,選擇替換,查找“,”並將替換留空。
網站主持人對此評論進行了最小化
當我嘗試這樣做時,它會彈出此錯誤消息“此公式有問題。不嘗試鍵入公式?當第一個字符是等號 (=) 或減號 (-) 時,Excel 認為這是一個公式:您輸入:=1+1,單元格顯示:2. 要解決此問題,請先輸入撇號 ('):您輸入:'=1+1,單元格顯示 =1+1。
網站主持人對此評論進行了最小化
我認為你正在改變公式。 嘗試將值複製並粘貼到新單元格,然後執行查找/替換。
網站主持人對此評論進行了最小化
試試這個刪除逗號: =MID(A2&" "&A2,FIND(", ",A2)+1,LEN(A2)+1)
網站主持人對此評論進行了最小化
如果我需要在姓和名之間插入逗號怎麼辦?
網站主持人對此評論進行了最小化
試試這個添加一個逗號: =MID(A2&", "&A2,FIND(" ",A2)+1,LEN(A2)+1)
網站主持人對此評論進行了最小化
從字面上看,我一直在努力弄清楚逗號的事情一個小時。 謝謝!
網站主持人對此評論進行了最小化
好的。 有人可以用英語說這個嗎,因為我不知道你們在說什麼
網站主持人對此評論進行了最小化
=MID(O4&", "&O4,FIND(" ",O4)+1,LEN(O4)+1)
網站主持人對此評論進行了最小化
=MID(A2&", "&A2,FIND(" ",A2)+1,LEN(A2)+1)

名稱在 A2 單元格上的位置
網站主持人對此評論進行了最小化
你救了我的命!!! 謝謝你。 其他人都沒有工作。 這正是我所需要的。
這裡還沒有評論
載入更多
留下你的意見
以訪客身份發帖
×
評價此帖子:
0   字符
推薦地點

關注我們

版權所有©2009 - 萬維網。extendoffice.com。 | 版權所有。 供電 ExtendOffice。 |
Microsoft和Office徽標是Microsoft Corporation在美國和/或其他國家的商標或註冊商標。
受Sectigo SSL保護