특정 문자나 문자가 포함된 문자열에서 전체 단어 추출

특정 문자나 문자가 포함된 문자열에서 전체 단어 추출

텍스트 내 특정 문자("=")가 포함된 셀의 단어만 추출하고 싶습니다.

A2:  Dolly made me a homemade=cake and some muffins
A3:  we had cheese=cake for dinner
A4: Everyone loves how the bakery makes some awesome=cakes

(A2:A4) 열에서 다음 결과를 (B2:B4) 열에 제공하고 싶습니다.

B2:  homemade=cake
B3:  cheese=cake
B4:  awesome=cakes

워크시트 기능을 사용하여 다음 솔루션을 시도했습니다.

A2: Johnny made his own dinner=lastnight and then cleaned the kitchen

=TRIM(TRIM(IFERROR(RIGHT(SUBSTITUTE(LEFT(A2,SEARCH(" ",A2&" ",SEARCH("=",A2))-1)," ",REPT(" ",LEN(A2))),LEN(C246)),""))),""),

이 수식은 다음 결과와 함께 ("=") 기호 오른쪽에 있는 데이터만 추출하므로 보시다시피 작동하지 않습니다. 반면에 ("=") 기호가 있는 단어 전체(오른쪽 및 왼쪽)를 추출하는 솔루션을 찾고 있습니다.

답변1

다음을 시도해 보세요세르정제된에프기름 부음(UDF)

Public Function Equals(inpt As String) As String
   Equals = ""
   ary = Split(Application.WorksheetFunction.Trim(inpt), " ")
   For Each a In ary
      If InStr(1, a, "=") > 0 Then
         Equals = a
         Exit Function
      End If
   Next a
End Function

여기에 이미지 설명을 입력하세요

사용자 정의 함수(UDF)는 설치 및 사용이 매우 쉽습니다.

  1. ALT-F11은 VBE 창을 불러옵니다
  2. ALT-I ALT-M은 새로운 모듈을 엽니다
  3. 내용을 붙여넣고 VBE 창을 닫습니다.

통합 문서를 저장하면 UDF도 함께 저장됩니다. 2003 이후 Excel 버전을 사용하는 경우 파일을 .xlsx가 아닌 .xlsm으로 저장해야 합니다.

UDF를 제거하려면:

  1. 위와 같이 VBE 창을 불러옵니다
  2. 코드를 지워라
  3. VBE 창을 닫습니다

Excel에서 UDF를 사용하려면:

=같음(A1)

일반적인 매크로에 대해 자세히 알아보려면 다음을 참조하세요.

http://www.mvps.org/dmcritchie/excel/getstarted.htm

그리고

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

UDF에 대한 자세한 내용은 다음을 참조하세요.

http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx

이 작업을 수행하려면 매크로를 활성화해야 합니다!

편집#1:

없이도 할 수 있습니다VBA, 동일한 방법론을 사용합니다. 데이터가 있는 경우A1, 안에C1입력하다:

=TRIM(MID(SUBSTITUTE($A1," ",REPT(" ",999)),COLUMNS($A:A)*999-998,999))

그리고 복사해 보세요. 그런 다음지하 1층입력하다:

=INDEX(C1:IV1,MATCH("*=*",C1:IV1,0))

여기에 이미지 설명을 입력하세요

답변2

Excel에는 다른 텍스트 문자열에서 단어나 텍스트를 추출하는 데 도움이 되는 다양한 텍스트 함수가 있습니다. 사용할 기능 또는 기능 조합은 상황에 따라 다릅니다. 예: 셀 A1에 "창의력을 얻으려면 확실성을 버리는 용기가 필요합니다"라는 텍스트 문자열이 있다고 가정합니다.

1. 문자열의 처음 5자를 얻으려면 LEFT 함수를 사용합니다: =LEFT(A1,5) 결과는 "Creat"입니다.

2. 문자열의 마지막 11자를 얻으려면 RIGHT 함수를 사용합니다: =RIGHT(A1,11) 결과는 "확실함"입니다.

3. 위치 10부터 시작하는 문자열에서 7자를 가져오려면 MID 함수를 사용합니다. =MID(A1,10,7) 결과는 "y requi"입니다.

4. 문자열의 첫 번째 단어를 얻으려면 LEFT 및 FIND 함수를 사용합니다. =LEFT(A1,(FIND(” “,A1)-1)) 결과는 “Creativity”입니다.

- 자세한 내용은 다음을 참조하세요.http://www.exceldigest.com/myblog/2009/02/01/how-to-extract-text-from-another-text-string/#sthash.yNDHU7Xe.dpuf

관련 정보