Excel에서 문자열 끝에서 변수 정보를 추출/구문 분석하는 방법은 무엇입니까?

Excel에서 문자열 끝에서 변수 정보를 추출/구문 분석하는 방법은 무엇입니까?

예1:

14/01/28 이자 획득0.10

예2:

13/12/27 체크카드 1226 LIONHEART 서점 시애틀 워싱턴-25.13

제공된 두 가지 예에서 내 목표는 문자열의 마지막 공백 뒤의 정보를 분리하는 것입니다. 다르게 말하면 오른쪽부터 공간까지 데이터를 구문 분석하려고 합니다.

답변1

좋은 질문이고, 정말 유용한 일입니다. 나는 얼마 전에 이 해결책을 찾았습니다. 문자열이 A1 셀에 있다고 가정하면 다음 수식을 사용할 수 있습니다.

=TRIM(RIGHT(SUBSTITUTE(A1," ",REPT(" ",LEN(A1))),LEN(A1)))

자세한 내용은 이 SO 스레드를 확인하세요.https://stackoverflow.com/questions/18617349/excel-last-character-string-match-in-a-string

방금 테스트 데이터로 이것을 시도했는데 작동합니다.

전체 공개:나는 이 공식이 왜 작동하는지 전혀 이해하지 못하지만, 작동합니다.

답변2

파워 쿼리를 사용하여 이를 수행할 수 있습니다. 파워 쿼리는 Excel 2010 및 Excel 2013용 Microsoft의 무료 추가 기능이며 Excel 2016의 데이터 리본에 "가져오기 및 변환"으로 기본 제공됩니다.

파워 쿼리에는 텍스트를 구분 기호로 분할하는 명령과 가장 오른쪽 구분 기호를 사용하는 설정이 있습니다.

또는 수식 솔루션을 원하는 경우 셀 길이를 계산하고 모든 공백이 제거된 셀 길이를 뺀 다음 해당 숫자를 Right() 함수에 입력하여 가장 오른쪽 x 문자를 반환합니다. 가능하면 문자열을 숫자로 강제 변환하는 0을 추가하여 숫자로 변환합니다.

=RIGHT(A1,LEN(A1)-LEN(SUBSTITUTE(A1," ","")))+0

편집: 주석에 있는 ThunderFrame의 좋은 제안: 소스에 선행/후행 공백이 있을 수 있으며, 이는 다음과 같이 처리될 수 있습니다.

=RIGHT(TRIM(A1),LEN(TRIM(A1))-LEN(SUBSTITUTE(TRIM(A1)," ","")))+0

관련 정보