열려 있는
닫다

Excel에서 전체 이름에서 중간 이름을 추출합니다. 다른 셀의 단어를 Excel 텍스트로 결합합니다. 이 비디오는 텍스트를 열로 분할하는 방법을 자세히 보여줍니다.

사람의 이름과 성이 포함된 셀 범위가 있는 경우 이름이나 성만 사용하여 작업해야 하는 경우가 많습니다. 예를 들어, 나중에 전문 회계사 인증서가 저장된 데이터베이스로 가져오기 위해 이름과 성을 별도로 저장해야 할 수도 있습니다. 아니면 이름을 정렬해야 할 수도 있습니다.

해결 방법은 FIND() 함수를 사용하여 이름의 두 부분을 구분하는 공백을 찾은 다음 LEFT() 또는 RIGHT() 함수를 사용하여 원하는 부분을 선택하는 것입니다. 왼쪽을 강조 표시하려면(성이 있다고 가정) 다음 수식을 사용하십시오.
=LEFT(A2,FIND("",A2)-1)

공백이 나타나는 것을 방지하기 위해 강조 표시에 필요한 문자 수에서 1을 빼는 수식에 유의하세요. 보다 일반적인 예로 이 공식을 사용하여 문자열에서 첫 번째 단어를 추출할 수 있습니다. 이름을 강조 표시하려면 RIGHT() 함수를 사용하여 유사한 수식을 작성해야 합니다.
=오른쪽(A2,길이(A2)-찾기("",A2))

필요한 문자 수를 추출하기 위해 수식은 단어의 길이를 가져와서 공백의 위치를 ​​뺍니다. 보다 일반적인 예로 이 공식을 사용하여 문자열에서 두 번째 단어를 추출할 수 있습니다. 그림에서. 그림 4.13은 작업 결과를 보여줍니다.

여기 D열에는 이전 두 수식을 결합하여 단어 순서를 변경한 결과가 표시됩니다. 줄에 단어가 하나만 포함된 경우 이러한 수식은 오류를 생성합니다. 이를 방지하려면 IFERROR() 함수를 사용하십시오.
=IFERROR(LEFT(A2,FIND("",A2)-1),A2) . 이 경우 셀에 공백이 없으면 A2 셀의 값이 표시됩니다.

함께 일하는 사람의 전체 이름에 성, 이름, 중간 이름이 포함되어 있으면 위 공식을 적용할 수 없습니다. 이 경우 성을 강조하는 첫 번째 수식은 제대로 작동하지만 오른쪽을 선택하는 방식은 작동하지 않습니다. 이 상황을 벗어나는 방법에는 여러 가지가 있습니다. SEARCH() 및 FIND() 함수를 사용하여 솔루션을 살펴보겠습니다.

예를 들어 Bulgakov Viktor Kirsanovich라는 이름이 지정됩니다. 이름이 셀 A2에 있다고 가정하면 수식 =FIND(" ";A2)는 첫 번째 공백의 위치인 9를 반환합니다. 다음 공백의 위치를 ​​찾으려면 첫 번째 공백의 위치에 1을 더한 값을 지정해야 합니다: =FIND(" ";A2;FIND(" ";A2)+1).

이제 다음 구성을 적용하여 가장 오른쪽 부분(이 경우 중간 이름)을 찾을 수 있습니다. =RIGHT(A2,LENGTH(A2)-FIND(" ";A2;FIND(" ",A2)+1)) .

중앙 부분을 선택하려면 첫 번째 공간과 두 번째 공간의 위치 차이를 확인하고 다음 공식을 사용하여 선의 모든 부분에서 선택해야 합니다. =PSTR(A2;FIND(" ";;A2)+1; FIND(" ";A2; FIND(" "; A2)+1-FIND(" ";A2)) 그림 4.14는 작업 결과를 보여줍니다.

Office 365용 Excel Office 365용 Mac용 Excel Excel 2019 Excel 2016 Mac용 Excel 2019 Excel 2013 Excel 2010 Excel 2007 Mac용 Excel 2016 Mac용 Excel 2011 Excel Online iPad용 Excel iPhone용 Excel Android 태블릿용 Excel Android 휴대폰용 Excel Excel 모바일 엑셀 스타터 2010 덜

이름과 성이라는 두 개의 다른 열을 연결하여 하나의 정규화된 이름 열을 생성한다고 가정해 보겠습니다. 이름과 성을 결합하려면 CONCATENATE 함수나 앰퍼샌드(&) 연산자를 사용합니다.

중요: Excel 2016Excel Mobile 및 Excel Online의 이 함수는 UNION 함수로 대체되었습니다. 이전 버전과의 호환성을 위해 CONCATENATE 함수를 계속 사용할 수 있지만 지금부터는 COMBINES를 사용해야 합니다. 이는 이후 버전의 Excel에서는 CONCATENATE를 사용하지 못할 수 있기 때문입니다.

다음 내용을 빈 종이에 복사하세요.

블라디미르

공식

설명(결과)

위의 이름을 공백으로 구분하여 결합합니다(Belova)

위의 이름을 결합하고 세미콜론으로 구분합니다(Novikov, Pavel)

연결(A2;" ";B2)

계약서, 청구서, 상업 제안서 또는 기타 문서를 작성할 때 고객의 성, 이름 및 부칭을 사용하는 경우가 많습니다. 문서 텍스트에서 고객을 지칭하기 위해 전체 이름을 분리하고 이름만 가져와야 하는 경우도 있고, 성과 이니셜을 남기고 서명인과 함께 열을 만들어야 하는 경우도 있습니다.

물론, 이름에서 필요한 데이터를 추출하는 수식을 작성할 수 있지만, 숙련된 사람이라도 이를 수행하는 데 5~7분이 소요됩니다. 문자 속 성의 위치를 ​​미리 모른다면? VBA-Excel 추가 기능에서 기성 기능을 사용하는 것이 훨씬 쉽고 편리합니다.

전체 이름으로 성을 찾기

추가 기능을 설치하면 LAST NAME(FULL NAME)이라는 새 기능을 사용할 수 있습니다.

  • 전체 이름 - 전체 이름이 포함된 셀에 대한 텍스트 또는 링크

이 함수의 목적은 셀에서 성만 추출하는 것입니다. 게다가 그녀에게는 순서가 중요하지 않습니다. 성은 텍스트의 시작, 끝 또는 중간에 올 수 있습니다.

전체 이름으로 이름 찾기

이름 =NAME(full name) 과 유사한 함수입니다. 위치에 관계없이 전체 이름이 포함된 텍스트에서 이름을 추출합니다.

전체 이름에서 중간 이름 찾기

이 시리즈의 마지막 함수는 중간 이름을 추출하는 =PATERNICAL(FULL NAME) 함수입니다.

Excel에서 전체 이름으로 작업하는 예 성 및 이니셜 표시

문서를 작성할 때 일반적인 작업 중 하나는 성 이름 후원 형식의 텍스트를 성 I. O 텍스트로 변환하는 것입니다. 다음 공식을 사용하여 문제를 해결할 수 있습니다.

성(A1)&" "&LEFT(이름(A1))&". "&LEFT(PATERNAME(A1))&"."

다소 길지만 애드온의 기능을 사용하지 않으면 훨씬 더 짧고 명확해질 것입니다.

또 다른 장점은 텍스트에서 성의 위치가 우리에게 중요하지 않다는 것입니다. 이 기능은 모든 것을 자동으로 결정합니다.

이 함수는 "성 이름 후원" 형식의 텍스트 문자열을 매개 변수로 받고 이름과 후원을 잘라내고 "성 I. O." 형식의 이니셜만 남깁니다.

이 함수는 Excel 워크시트 셀에서 UDF(사용자 정의 함수)로 사용할 수 있습니다.
(첨부 파일의 예 참조)

기능 기능에 대한 설명 - 포럼: 프로그래머스포럼.ru/showpost.php?p=757147&postcount=6

전체 이름을 여러 부분으로 나누는 정확한 공식 알고리즘은 없습니다.
원어민의 계보와 언어를 알지 못한 채 이름과 성을 공식적으로 분리하는 것은 불가능합니다. 다양한 휴리스틱만 사용할 수 있습니다.

게다가, 서로 다른 당국은 (다른 시기에) 주어진 경우에 이니셜이 어떻게 보여야 하는지에 대해 서로 다른 견해를 가지고 있었습니다.
Federal Migration Service 문서와 중앙 은행 등록 기관, 상업 문서 준비가 다릅니다.
따라서 일부 서비스에서는 동남아시아의 복잡한 닉네임 2~3개를 축약하지 않도록 요구하고 있습니다. 하지만 일부는 그렇지 않습니다.

예, 이니셜이 오른쪽이나 왼쪽 어디에 있어야 하는지에 대한 질문에는 모호함이 없습니다. 아니요, 물론 러시아어 규칙이 있습니다... 그러나 하나 또는 다른 구조의 비즈니스 매출 규칙이 우선합니다(또는 단순히 문서를 수락하는 점원의 왼쪽 뒷다리가 원하는 대로)...

많은 사람들이 다음과 같은 질문을 할 수 있습니다. 이 동물원 전체는 어디서 왔으며 왜 필요한가요? 원칙적으로 이들 Don Pedros는 모두 이전에 러시아 연방 관할권 밖에서 발행된 문서를 기반으로 러시아 여권을 받은 외국인입니다. 법적 상황은 다릅니다. 그리고 새로운 러시아 여권에는 모국어에서 키릴 문자로 음역되는 경우가 많습니다.
-ogly 및 -kyzy의 러시아 여권이 이제 타타르스탄에서 발급됩니다. 나는 2007년 여권에 기재된 이름이 Mustafa Oleg ogly인 고객을 만났습니다.

옵션 비교 텍스트 공용 함수 이니셜(s As String , 선택 사항 ToLeft As Boolean = False ) Dim sv As Variant , sФ As String , sИ As String , sО As String , i As Long , k As Long Application.Volatile True If InStr(s , "." ) > 0 Or Len(Trim$(s)) = 0 Then Initials = s " 명시적으로 지정된 이니셜 또는 빈 문자열 Exit Function End If "입력 문자열 정규화 s = 바꾸기(Application.Trim(s), Chr( 30), "-" ) s = 바꾸기(바꾸기(s, " -" , "-" ), "- " , "-" ) s = 바꾸기(바꾸기(s, "" " , """ ), " "" , """ ) " O "헨리 알렉산더; O" 헨리 알렉산더; N" 호모; D" Treville sv = 분할 sИ = vbNullString: sО = vbNullString: sФ = vbNullString i = UBound (sv) If i< 1 Then Инициалы = s: Exit Function Select Case sv(i) Case "оглы" , "кызы" , "заде" "бей, бек, заде, зуль, ибн, кызы, оглы, оль, паша, уль, хан, шах, эд, эль i = i - 1 sО = UCase(Left$(sv(i), 1)) & "." i = i - 1 Case "паша" , "хан" , "шах" , "шейх" i = i - 1 Case Else Select Case Right$(sv(i), 3) Case "вич" , "вна" If i >= 2 Then "러시아어 후원자의 표준 어미 sО = СropWord(sv(i)) Else "이름 유형 Bosan Slavich sИ = СropWord(sv(i)): sФ = sv(0) End If i = i - 1 Case Else k = InStr(sv(i), "-" ) k > 0이면 케이스 선택 Mid$(sv(i), k + 1) 케이스 "ogly" , "kyzy" , "zade" , "ugli" , "uul " , "ool" "nasab "-ogly" 및 "-zade" 유형 Mahmud-ogly sО = UCase(Left$(sv(i), 1)) & ". i = i - 1 If i = 0 그런 다음 sИ = sО sО = vbNullString End If End 선택 ElseIf i > 2 그런 다음 케이스 선택 sv(i - 1) Case "ibn" , "ben" , "bin" sО = UCase(Left$(sv(i), 1) ) & "." " Usertal Alisher bin Suleiman i = i - 2 End Else 선택 " Ben Eduard sИ = UCase(Left$(sv(i), 1)) If Len(sv(i)) > 1 Then sИ = sИ & " ." i = i - 1 End If End 선택 End Case 선택 sv(0) Case "de" , "del" , "dos" , "sept" , "van" , "von" , "tsu" If i > = 2 그러면 sФ = sv(0) & " " & StrConv(sv(1), vbProperCase) sИ = СropWord(sv(2)) Else "De Nikolai If Len(sИ) > 0 그러면 sФ = sv(0 ) & " " & StrConv(sv(1), vbProperCase) Else sФ = StrConv(sv(0), vbProperCase): sИ = СropWord(sv(1)) End If End If Case Else If Len(sФ) = 0 Then "추가로 성을 정의하지 않았습니다. sФ = StrConv(sv(0), vbProperCase) If Len(sИ) = 0 Then sИ = СropWord(sv(1)) End If End Select If ToLeft Then 이니셜 = sИ & sО & " " & sФ Else 이니셜 = sФ & " " & sИ & sО 종료 함수 공용 함수 СropWord(s As Variant ) As String If Len(s) = 1 Then СropWord = s Else ss$ = UCase(Left$(s, 1) ) & "." : k = InStr(s, "-" ) k > 0이면 ss$ = ss$ & "-" & Mid$(s, k + 1, 1) & "." End If End 함수

첨부 파일 크기

Excel의 목록은 수식을 사용하여 수정할 수 있습니다. 이름과 중간 이름을 이니셜로 바꾸고, 셀의 단어를 문장으로 결합하고, Excel 목록에 단어를 삽입합니다.
성, 이름, 후원이 서로 다른 셀에 기록되는 테이블이 있습니다. 하나의 셀에 배치해야 합니다. 목록을 수동으로 다시 작성하는 데 시간이 오래 걸립니다. 그런데 엑셀 표에는 특별한 기능이 있습니다. 두 가지 옵션이 있습니다.
첫 번째 옵션.
우리는 이 목록을 가지고 있습니다.
셀 D1에 이름을 한 문장으로 작성해야 합니다. 이 셀(D1)에 수식을 작성합니다. 셀을 클릭합니다(활성화).
"함수 라이브러리" 섹션의 "수식" 탭으로 이동하여 "텍스트"를 선택한 다음 "CONCATENATE" 함수를 선택합니다. 나타나는 창에서 하나의 문장으로 결합해야 하는 셀의 주소를 표시합니다. 그것은 이렇게 밝혀졌습니다.

이름은 공백 없이 기재됩니다. 이 문제를 해결하려면 공식을 개선해야 합니다. 셀 주소 사이에는 세미콜론 뒤에 ""를 씁니다. 결과는 다음 공식입니다.
=CONCATENATE(A1;" ";B1;" ";C1)
그것은 이렇게 밝혀졌습니다.
이제 수식을 열 아래로 복사하세요.
두 번째 옵션.
CONCATENATE 대신 앰퍼샌드(&) 버튼을 누르기만 하면 됩니다. 공식은 다음과 같습니다.
=A2&B2&C1
결과는 첫 번째 옵션과 동일합니다. 단어 사이에 공백이 없으면 공백(" ")을 삽입합니다.
공식은 다음과 같을 겁니다. =A2&" "&B2&" "&C2
단어뿐만 아니라 숫자도 결합할 수 있습니다. Excel의 셀 데이터로 문장을 만들 수 있습니다.
양식의 필수 셀에 수식을 설정할 수 있습니다. 예를 들어 주소가 있는 클라이언트 목록이 있습니다.

우리는 제안을 해야 합니다. 셀에 수식을 작성합니다.
=A2&" "&B2&" "&C2&" "&" 거주지:"&" "&"g."&" "&D2&" "&"st."&" "&E2&" "&"d."&" "&F2& " ."
이것이 제안이었습니다.

우리는 이 원칙을 사용하여 제안서를 작성합니다.
셀의 텍스트가 이미 작성되었지만 기존 단어 앞에 추가 단어를 삽입해야 하는 경우 수식을 사용하여 이를 수행할 수 있습니다. 우리는 이 목록을 가지고 있습니다.
성 앞에 "Tenant"라는 단어를 삽입해야 합니다. 새 열의 셀에 수식을 작성합니다.
="테넌트"&" "&A8
이 수식을 열 아래로 복사하세요. 결과는 다음과 같은 목록입니다.
첫 번째 열을 숨기거나 수식이 없는 새 열의 값을 복사할 수 있고, 수식이 있는 첫 번째 열과 두 번째 열을 삭제할 수 있습니다.
셀의 텍스트에 텍스트, 숫자, 기호를 추가하는 다른 방법은 "Excel 텍스트가 있는 셀에 텍스트 추가" 문서를 참조하세요.
수식을 사용하면 이름, 중간 이름, 성이 모두 쓰여진 목록을 성과 이니셜이 포함된 목록으로 변환할 수 있습니다. 예를 들어, 셀은 다음과 같이 말합니다.
다음 열에서는 다음 수식을 작성합니다.
=CONCATENATE(LEFT(SPACE(A1),FIND(" ",SPACE(A1),1)),PSTR(SPACE(A1),FIND(" ",SPACE(A1),1)+1,1);" .";PSTR(SPACE(A1);FIND(" ";SPACE(A1); FIND(" ";SPACE(A1);1)+1)+1;1);."")
일어난.
단어 사이에 여분의 공백이 있으면 제거할 수 있습니다. 이에 대한 자세한 내용은 "Excel에서 추가 공백을 제거하는 방법" 기사를 참조하세요. 같은 방법을 사용하면 수식에서 숫자 사이의 공백을 제거할 수 있습니다. 공백이 있으면 계산할 때 오류가 발생하거나 수식이 계산되지 않을 수 있습니다.
행의 데이터를 마지막 셀에서 첫 번째 셀로 이동하거나 행을 뒤집을 수 있습니다. 예를 들어, 셀에는 다음과 같이 기록됩니다. 첫 번째 셀에는 Ivanov가 있고 두 번째 셀에는 Maria가 있습니다. 첫 번째 셀에는 Maria를 쓰고 두 번째 셀에는 Ivanova를 써야 합니다. 큰 테이블에서 이 작업을 빠르게 수행하는 방법은 "" 문서를 참조하세요.