Excel의 텍스트를 열 기능으로 분할

Excel의 텍스트를 열 기능으로 분할

아래와 같이 데이터 행이 포함된 Excel 스프레드시트가 있습니다. 제품 이름과 번호가 포함된 코드가 있습니다.

QA32 Product One (Large) 23
AZ63 Product Two 96
PR65 Product Three 149

각 필드를 열로 분할하려면 어떻게 해야 합니까?

Excel에서 구분 옵션을 사용하고 공백으로 구분하여 "텍스트를 열로 분할"하려고 시도했지만 일부 제품 이름에 한 단어 이상이 포함되어 있어 일부 숫자가 잘못된 열에 포함되었습니다. 예:

Code     Name       Number       
QA32    Product      One       (Large)    23
AZ63    Product      Two         96
PR65    Product      Three       149

원하는 결과는 다음과 같습니다.

Code        Name                Number
QA32    Product One (Large)       23
AZ63    Product Two               96
PR65    Product Three             149

도움을 주시면 감사하겠습니다!

답변1

FIND-function첫 번째 공간과 마지막 공간의 위치를 ​​결정하는 데 사용됩니다 . 그런 다음 를 사용하여 MID-function데이터를 세 부분으로 분할합니다. 공간의 위치를 ​​알면 분할이 쉽습니다. FIND왼쪽에서 오른쪽으로 이동하므로 첫 번째 공간을 찾는 것도 쉽지 않습니다 . 안타깝게도 Excel에 오른쪽에서 왼쪽으로 검색하도록 지시할 수 있는 방법은 없습니다.

그래서 어려운 부분은 마지막 공간을 결정하는 것입니다! 여기서는 배열 수식을 사용합니다.
배열 수식을 입력하려면 수식을 셀에 붙여넣고 를 누르지 마세요 Enter. 대신 + + 를
누르세요 .CtrlShiftEnter

{=MAX((MID(A2,ROW(A:A),1)=" ")*ROW(A:A))}

성공적으로 완료되면 Excel에서 시작 및 종료 중괄호를 추가합니다.


주어진 셀에 모든 수식을 삽입하고 사용하십시오.autofill down

A2: 데이터는 여기에 저장됩니다.
B2: =FIND(" ",A2,1)
C2: =MAX((MID(A2,ROW(A:A),1)=" ")*ROW(A:A)) <-배열 공식!
D2: =MID(A2,1,B2-1)
E2: =MID(A2,B2+1,C2-B2-1)
F2:=MID(A2,C2+1,LEN(A2))

결과 화면
여기에 이미지 설명을 입력하세요

답변2

적합한 알고리즘이 반환되는 경우:

  • 코드 = 첫 번째 단어
  • 제품 = 첫 번째 단어와 마지막 단어 사이의 모든 것
  • 숫자 = 마지막 단어

그러면 다음 공식이 작동합니다.

데이터가 A1에 있다고 가정합니다.

Code:     =LEFT(TRIM(A1),FIND(" ",TRIM(A1))-1)
Product:  =TRIM(MID(SUBSTITUTE(TRIM(A1)," ",REPT(" ",99)),100,LEN(SUBSTITUTE(TRIM(A1)," ",REPT(" ",99)))-198))
Number:   =TRIM(RIGHT(SUBSTITUTE(TRIM(A1)," ",REPT(" ",99)),99))

관련 정보