如何反转excel中一列中每个单元格中的名字和姓氏_如何使用excel公式或excel VBA宏翻转名字和姓氏
时间:2022-10-26 19:03:02
本文将讲述如何在Excel的一列中翻转或反转名字和姓氏。如何反转excel中一列中每个单元格中的名字和姓氏。如何使用excel公式或excel VBA宏翻转名字和姓氏。
如果需要反转单元格区域中的名字和姓氏,然后将结果放入另一列中的单元格中。您需要首先获取或提取名字或姓氏,然后将这些名称组合到同一个单元格中。您可以编写excel公式或编写新的Excel VBA代码来实现反转。
使用Excel公式反转名字和姓氏
要反转名字和姓氏,可以根据MID函数,FIND函数和Len函数创建公式,如下所示:
=MID(B2&” ” &B2, FIND(” “,B2)+1, LEN(B2))
让我们看看这个公式是如何工作的:
=B2&” ” &B2
此公式将使用连接运算符将B2中的文本字符串与B2中的文本字符串再次连接以生成新的文本字符串。然后我们只需要从新文本字符串中提取第二个和第三个单词。
= FIND(” “,B2)+1
此公式将返回Cell B2的文本字符串中第一个空格字符的位置。然后它将作为其start_num参数传递给MID函数。
= LEN(B2)
它将返回Cell B2中文本字符串的长度,然后它将作为num_chars参数传递给MID函数。
=MID(B2&” ” &B2, FIND(” “,B2)+1, LEN(B2))
使用Excel VBA宏反转名字和姓氏
您也可以编写一个excel宏来反转名字和姓氏,您可以参考以下步骤:
步骤1:打开您的Excel工作簿,然后单击开发工具选项卡下的“Visual Basic”命令,或者只需按“ALT + F11”快捷方式。
步骤2:然后将出现“Visual Basic编辑器”窗口。
步骤3:单击“插入” – >“模块”以创建新模块。
步骤4:将以下VBA代码粘贴到代码窗口中。然后单击“保存”按钮。
Sub ReverseName()
Set myRange = Application.Selection
Set myRange = Application.InputBox("Select one Range that you want to reverse name", "ReverseName", myRange.Address, Type:=8)
myDelemiter = Application.InputBox("Please type a delimiter character:", "ReverseName", " ", Type:=2)
For Each myCell In myRange
xValue = myCell.Value
NameList = VBA.Split(xValue, myDelemiter)
If UBound(NameList) = 1 Then
myCell.Value = NameList(1) + myDelemiter + NameList(0)
End If
Next
End Sub