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

Excel의 텍스트 문자열에서 첫 번째 / 마지막 / n 번째 단어를 추출하는 방법은 무엇입니까?

워크 시트의 텍스트 문자열에서 특정 단어를 추출해야하는 문제로 어려움을 겪은 적이 있습니까? 예를 들어, 첫 번째 / 마지막 또는 n 번째 단어를 가져 오는 데 필요한 다음 범위의 텍스트 문자열이 있습니다. 여기에서 문제를 해결할 수있는 효과적인 방법에 대해 설명 할 수 있습니다.


수식을 사용하여 텍스트 문자열에서 이름 또는 성 추출

텍스트 문자열 목록에서 첫 번째 단어를 추출해야하는 경우 다음 수식이 도움이 될 수 있습니다.

첫 번째 단어를 추출하려면 아래 수식을 빈 셀에 입력 한 다음이 셀의 자동 채우기 핸들을 필요에 따라 범위로 드래그하십시오.

= IF (ISERR (FIND ( "", A2)), "", LEFT (A2, FIND ( "", A2) -1))

각 셀에서 마지막 단어를 추출하려면 다음 공식을 적용하십시오.

= IF (ISERR (FIND ( "", A2)), "", RIGHT (A2, LEN (A2) -FIND ( "*", SUBSTITUTE (A2, "", "*", LEN (A2) -LEN ( SUBSTITUTE (A2, "", ""))))))

이제 각 셀에서 첫 번째 또는 마지막 단어가 추출되는 것을 볼 수 있습니다.

배송 시 요청 사항: 위의 공식에서 A2 첫 번째 또는 마지막 단어를 추출 할 셀을 나타냅니다.

길고 복잡한 공식을 외우기가 어렵습니까? 놀라운 도구로 n 번째 단어 w 추출몇 번의 클릭 만!

위의 긴 수식은 첫 번째 단어와 마지막 단어 만 추출 할 수 있지만 지정된 n 번째 단어, 두 번째 단어, 여섯 번째 단어 등을 추출하는 데는 쓸모가 없습니다. 문제를 해결하기위한 수식을 알아낼 수 있더라도 수식은 다음과 같아야합니다. 암기하고 적용하기에는 너무 복잡합니다. 여기에서 Excel 용 Kutools의 셀에서 n 번째 단어 추출 기능을 권장하며 가능한 한 쉽게 n 번째 단어를 추출하는 데 도움이 될 것입니다!


Excel 용 Kutools - 300개 이상의 편리한 Excel용 도구가 포함되어 있습니다. 전체 기능 무료 평가판 30-day, 신용카드 불필요! 이제 그것을 잡아

사용자 정의 함수로 텍스트 문자열에서 n 번째 단어 추출

텍스트 문자열에서 두 번째, 세 번째 또는 n 번째 단어를 추출하려면이를 처리 할 사용자 정의 함수를 만들 수 있습니다.

1. 누르고 ALT + F11 키를 눌러 Microsoft Visual Basic for Applications 창.

2. 딸깍 하는 소리 끼워 넣다 > 모듈을 클릭하고 다음 코드를 모듈 창.

Function FindWord(Source As String, Position As Integer)
'Update 20131202
Dim arr() As String
arr = VBA.Split(Source, " ")
xCount = UBound(arr)
If xCount < 1 Or (Position - 1) > xCount Or Position < 0 Then
    FindWord = ""
Else
    FindWord = arr(Position - 1)
End If
End Function

3. 그런 다음 코드를 저장합니다.이 예에서는 문자열에서 세 번째 단어를 가져 오므로 다음 수식을 입력합니다. = findword (A2,3) 빈 셀 B2에 넣은 다음이 셀의 자동 채우기 핸들을 필요에 따라 범위로 끕니다. 스크린 샷보기 :

참고 : 위 공식에서 A2 단어를 추출하려는 셀, 숫자 3 추출 할 문자열의 세 번째 단어를 나타내며 필요에 따라 변경할 수 있습니다.


텍스트 문자열에서 각 단어를 추출하여 가로 또는 세로로 나열

이 방법은 Excel 용 Kutools를 소개합니다. 셀 분할 텍스트 문자열 셀에서 각 단어를 추출한 다음 필요에 따라 추출 된 단어를 가로 또는 세로로 나열하는 유틸리티입니다.

Excel 용 Kutools - 300개 이상의 편리한 Excel용 도구가 포함되어 있습니다. 전체 기능 무료 평가판 30-day, 신용카드 불필요! 지금 무료 평가판!

1. 단어를 추출 할 텍스트 문자열 셀을 선택하고 쿠툴 > 병합 및 분할 > 셀 분할.

2. 셀 분할 열기 대화 상자에서 분할 유형을 거래증명방식 섹션에서 스페이스 버튼 에서 옵션 구분 기호 지정 섹션을 클릭하고 Ok 단추. 스크린 샷보기 :

3. 이제 추출 된 단어를 출력 할 대상 범위를 지정하고 OK 단추

확인한 경우 열로 분할 위의 셀 분할 대화 상자에서 모든 단어가 모든 텍스트 문자열에서 추출되어 세로로 나열됩니다.

확인한 경우 행으로 분할 위의 셀 분할 대화 상자에서 모든 단어가 모든 텍스트 문자열에서 추출되어 가로로 나열됩니다.


놀라운 도구로 Excel의 텍스트 문자열에서 n 번째 단어 추출

Excel 용 Kutools를 설치 한 경우 수식 도우미> 셀에서 n 번째 단어 추출 기능을 사용하여 지정된 셀에서 n 번째 단어를 쉽게 추출 할 수 있습니다.

Excel 용 Kutools - 300개 이상의 편리한 Excel용 도구가 포함되어 있습니다. 전체 기능 무료 평가판 30-day, 신용카드 불필요! 지금 무료 평가판!

1. 추출한 단어를 넣을 셀을 선택하고 쿠툴 > 수식 도우미 > 수식 도우미 이 기능을 사용하려면

2. 수식 도우미 대화 상자에서 다음과 같이하십시오.
(1) 선택 본문 인사말 공식 유형 드롭 다운 목록;
(2) 클릭하여 강조 표시 셀에서 n 번째 단어 추출 에서 공식 선택 리스트 박스;
(3) 세포 상자에서 단어를 추출 할 셀을 지정하십시오.
(4) 안으로 N 번째 상자에 번호를 지정합니다.

3. 클릭 Ok 단추. 필요한 경우 수식 셀의 자동 채우기 핸들을 끌어 다른 셀에 수식을 복사하십시오.


데모 : 텍스트 문자열에서 각 단어를 추출하여 가로 또는 세로로 나열


Excel 용 Kutools 300일 동안 제한 없이 무료로 사용할 수 있는 30개 이상의 편리한 Excel용 도구가 포함되어 있습니다. 지금 다운로드 및 무료 평가판!

관련 기사 :


최고의 사무 생산성 도구

Excel용 Kutools는 대부분의 문제를 해결하고 생산성을 80% 증가시킵니다.

  • 재사용: 빠르게 삽입 복잡한 공식, 차트 그리고 이전에 사용한 모든 것; 셀 암호화 암호로; 메일 링리스트 생성 이메일 보내기 ...
  • 슈퍼 포뮬러 바 (여러 줄의 텍스트와 수식을 쉽게 편집 할 수 있습니다.) 레이아웃 읽기 (많은 수의 셀을 쉽게 읽고 편집합니다.) 필터링 된 범위에 붙여 넣기...
  • 셀 / 행 / 열 병합 데이터 손실없이; 셀 내용 분할; 중복 행 / 열 결합... 중복 셀 방지; 범위 비교...
  • 중복 또는 고유 선택 행; 빈 행 선택 (모든 셀이 비어 있음); 슈퍼 찾기 및 퍼지 찾기 많은 통합 문서에서; 무작위 선택 ...
  • 정확한 사본 수식 참조를 변경하지 않고 여러 셀; 참조 자동 생성 여러 시트에; 글 머리 기호 삽입, 확인란 등 ...
  • 텍스트 추출, 텍스트 추가, 위치 별 제거, 공간 제거; 페이징 부분합을 만들고 인쇄합니다. 셀 내용과 주석 간 변환...
  • 슈퍼 필터 (다른 시트에 필터 구성표 저장 및 적용) 고급 정렬 월 / 주 / 일, 빈도 등 특수 필터 굵은 기울임 꼴로 ...
  • 통합 문서와 워크 시트 결합; 키 열을 기반으로 테이블 병합; 데이터를 여러 시트로 분할; xls, xlsx 및 PDF 일괄 변환...
  • 300개 이상의 강력한 기능. Office / Excel 2007-2021 및 365를 지원합니다. 모든 언어를 지원합니다. 기업 또는 조직에서 쉽게 배포할 수 있습니다. 전체 기능은 30일 무료 평가판입니다. 60일 환불 보장.
kte 탭 201905

Office Tab은 Office에 탭 인터페이스를 제공하여 작업을 훨씬 쉽게 만듭니다.

  • Word, Excel, PowerPoint에서 탭 편집 및 읽기 사용, Publisher, Access, Visio 및 Project.
  • 새 창이 아닌 동일한 창의 새 탭에서 여러 문서를 열고 만듭니다.
  • 생산성을 50% 높이고 매일 수백 번의 마우스 클릭을 줄입니다!
officetab 하단
코멘트 (38)
아직 평가가 없습니다. 가장 먼저 평가하세요!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
그 vba 코드는 환상적입니다. 감사합니다.
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
이 사용자 정의 함수는 굉장합니다! 공유해주셔서 감사합니다.
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
정말 감사합니다! 잘 작동했습니다! :-)
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
이것은 매우 도움이 되었습니다. 내가 사용할 수 있는 "FindWord"와 같은 유용한 손으로 만든 기능의 다운로드 또는 복사 및 붙여넣기 목록을 아는 사람이 있는지 궁금합니다.
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요, 데이터 바로 뒤에 추출 및 쉼표 또는 대시를 사용할 수 있는 Visual Basic 수식에 무엇을 추가할 수 있는지 궁금합니다. 예를 들어 Fortin-
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요, 최고입니다. 그것은 매우 잘 작동했고 긴장을 줄여 이 작업에서 많은 시간을 절약합니다. 이 작업에 참여하고 공유해 주신 모든 분들께 감사드립니다...
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
좋은 것입니다. 이것은 매우 잘 작동했습니다.
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요, 이것은 정말 많은 시간을 절약합니다. 공유해 주셔서 감사합니다. vba로 단어를 역으로 추출하는 방법을 제안할 수 있습니까? 예를 들어 마지막 단어는 1이고 오른쪽에서 왼쪽으로 두 번째는 2입니다. 이것은 매우 감사할 것입니다.
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
이것은 단어가 아닌(예: 공급업체 이름 다음에 부품 번호)로 구성된 소스 문자열에서 제대로 작동하지 않습니다.
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
셀에서 n번째 단어의 글꼴을 변경하는 방법
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
매우 감사. 많은 도움이 되었습니다.
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요, 귀하의 코드에 감사드립니다. 조금 더 확장할 수 있도록 영감을 주었습니다. 다음 줄에서 선택할 수 있습니다: 마지막 단어(0), 마지막 단어 하나 제외(-1), 마지막에서 두 번째(-2) 등. 단어 수에 관계없이. Function FindWord(Source As String, Position As Integer) 'Update 20150504 Dim arr() As String arr = VBA.Split(Source, " ") xCount = UBound(arr) 케이스 위치 선택 Case -xCount To 0 FindWord = arr(xCount + Position) Case 1 To (xCount + 1) FindWord = arr(Position - 1) Case Else FindWord = "" End Select End Function
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요, 어제 코드에 추가되었습니다. 이것은 소스 문자열의 중복 공간을 조정하기 위해 추가 행을 추가합니다. arr = VBA.Split(WorksheetFunction.Trim(Source), " ") 관련, Allart
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
감사합니다, Alan, 이것은 훌륭합니다. 감사합니다! :)
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
정말 감사합니다!!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요.. 코드 감사합니다. 목록 문장이 있고 그 중 하나는 단 1단어입니다. 단 1단어만 있으면 코드가 작동하지 않습니다.
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
내 목록의 일부가 셀에 단 하나의 단어만 있는 경우 작동하는 첫 번째 단어에 대한 코드를 얻을 수 없습니다. 예: 첫 번째 단어 ---> 첫 번째 두 번째 ---> [null] 마지막 단어 ---> 마지막
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
이것을 시도하십시오(위의 내 답장 참조): Function FindWord(Source As String, Position As Integer) ' get 1st, 2nd, last(0), 두 번째에서 마지막(-2) 등, 문자열에서 단어 ' Update 20150505 Dim arr( ) 문자열로 arr = VBA.Split(WorksheetFunction.Trim(Source), " ") xCount = UBound(arr) 케이스 위치 선택 케이스 -xCount에서 0 FindWord = arr(Position + xCount) 케이스 1에서 xCount + 1 FindWord = arr (위치 - 1) Case Else FindWord = "" End Select
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요 괴짜 여러분, 저는 다음과 같은 셀을 가지고 있습니다: 1 ABCD; 2 DEDF; 1 DED#3d; 4 FDWDS; 1 ED 그리고 1 이후의 문자를 추출하고 싶습니다. 그래서 아래와 같은 결과를 얻고 싶습니다: ABCD;DED#3d;ED
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
64비트 Excel 2013이 있고 Morefunc 추가 기능이 없습니다. 위의 코드를 기반으로 Morefunc의 WMID 기능을 대체하는 방법을 생각해 냈습니다. 저보다 더 전문가가 정리를 좀 해주시면 감사하겠습니다. 함수 WMid1(소스를 문자열로, 선택적 위치를 정수로, 선택적 WordCount를 정수로, 선택적 구분 기호를 문자열로) Dim arr() As String Dim xCount As Integer Dim wCount As Integer Dim wFirst As Integer Dim wLast As Integer If Position = 0 then Position = 1 If WordCount = 0 then WordCount = 1 If Separator = "" Then Separator = " " arr = VBA.Split(Trim(Source), Separator) xCount = UBound(arr) + 1 If Position < 1 then wFirst = 응용 프로그램. Max(xCount + Position - WordCount + 1, 0) wLast = xCount + Position Else wFirst = Position - 1 wLast = Application.Min(xCount - 1, Position + WordCount - 2) xCount < 2 또는 Abs(Position)인 경우 종료 > xCount then WMid1 = "" Else WMid1 = arr(wFirst) For wCount = wFirst + 1 To wLast WMid1 = WMid1 & 구분자 & arr(wCount) Next End If WMid1 = Trim(WMid1) End Function
아직 코멘트가 없습니다
더보기
여러분의 의견을 남겨
게스트로 게시
×
이 게시물 평가 :
0   등장 인물
추천 위치

Follow Us

저작권 © 2009 - WWW.extendoffice.com. | 판권 소유. 에 의해 구동 ExtendOffice. | | 사이트 맵
Microsoft 및 Office 로고는 미국 및 / 또는 기타 국가에서 Microsoft Corporation의 상표 또는 등록 상표입니다.
Sectigo SSL로 보호