엑셀 / 함수 / SUBSTITUTE / 문자열 바꾸기

SUBSTITUTE는 문자열에서 특정 텍스트를 찾아 다른 텍스트로 바꾸는 함수입니다. occurrence 인수를 생략하면 일치하는 부분을 모두 바꾸고, 지정하면 해당 번째만 바꿉니다. 문자열의 고정 위치가 아니라 내용 자체를 바꾸고 싶을 때 사용합니다.

구문과 인수

=SUBSTITUTE(text,old_text,new_text,[instance_num])

text는 원본, old_text는 찾을 텍스트, new_text는 대체할 텍스트입니다. instance_num는 바꿀 번째를 나타내는 양의 정수이며 예를 들어 2이면 두 번째 일치 부분만 바꿉니다. 이 함수는 원본 셀을 지우지 않고 새 텍스트를 반환합니다.

구문과 지원 제품은 Microsoft의 SUBSTITUTE 함수 설명에서 확인할 수 있습니다.

모두 바꾸기와 특정 번째 바꾸기

=SUBSTITUTE("AB-CD-CD","CD","ZZ")
=SUBSTITUTE("AB-CD-CD","CD","ZZ",2)

SUBSTITUTE로 텍스트를 바꾸는 예제입니다. 위 수식은 각각 AB-ZZ-ZZ와 AB-CD-ZZ를 반환합니다. instance_num를 지정했는지에 따라 변경 범위가 달라집니다.

SUBSTITUTE로 텍스트를 바꾸는 예제입니다. 위 수식은 각각 AB-ZZ-ZZ와 AB-CD-ZZ를 반환합니다. instance_num를 지정했는지에 따라 변경 범위가 달라집니다.

원본 텍스트에 일치하는 부분이 없으면 그대로 반환합니다. SUBSTITUTE는 대소문자를 구분하므로 "CD"를 찾는 조건으로 소문자 "cd"까지 바꾸지는 않습니다. 먼저 대소문자를 통일할 필요가 있는지도 자료의 의미에 맞춰 판단하세요.

불필요한 기호 제거 예제

=SUBSTITUTE(A2,"-","")

이 수식은 A2의 하이픈을 모두 제거합니다. 전화번호나 식별 코드를 가공할 때 사용할 수 있지만 결과는 텍스트입니다. 앞자리 0이 중요한 식별자를 숫자로 바꾸면 0이 사라질 수 있으므로 텍스트를 유지하는 편이 적합합니다.

여러 종류의 문자를 제거할 때는 SUBSTITUTE를 중첩할 수 있습니다. 다만 원래 단어 속의 의미 있는 기호까지 제거하지 않는지 대표 자료로 확인하세요. 공백 정리는 TRIM 함수, 위치와 문자 수를 정해 바꾸는 작업은 REPLACE 함수와 구분합니다.

같은 카테고리의 다른 글
엑셀 / 로그 또는 상용로그의 값 구하기, 상용로그표 만들기

엑셀 / 로그 또는 상용로그의 값 구하기, 상용로그표 만들기

LOG·LOG10·LN의 차이와 로그 계산의 입력 조건을 설명합니다. 혼합 참조를 사용해 행과 열로 펼쳐지는 상용로그표를 만들 수 있습니다.

엑셀 / 함수 / MEDIAN / 중앙값(중간값) 구하는 함수

엑셀 / 함수 / MEDIAN / 중앙값(중간값) 구하는 함수

MEDIAN이 홀수·짝수 개수의 자료에서 중앙값을 계산하는 방식을 설명합니다. 빈 셀과 0, 산술평균과 중앙값의 차이도 예제로 확인할 수 있습니다.

엑셀 / 함수 / IFERROR / 에러 메시지를 변경하는 함수

엑셀 / 함수 / IFERROR / 에러 메시지를 변경하는 함수

IFERROR로 오류를 다른 값이나 문구로 표시하는 방법을 설명합니다. 빈 문자열·0의 차이와 실제 수식 오류를 숨기지 않는 사용 기준도 다룹니다.

엑셀 / 함수 / DELTA / 두 숫자가 같은지 비교하는 함수

엑셀 / 함수 / DELTA / 두 숫자가 같은지 비교하는 함수

DELTA가 같은 숫자에 1, 다른 숫자에 0을 반환하는 방식과 기본값을 설명합니다. 소수 계산 오차가 있는 수를 비교할 때의 한계도 다룹니다.

엑셀 / 함수 / DATEDIF / 두 날짜 사이의 일수, 월수, 년수 등을 계산하는 함수

엑셀 / 함수 / DATEDIF / 두 날짜 사이의 일수, 월수, 년수 등을 계산하는 함수

DATEDIF로 완성된 연수·월수와 날짜 차이를 구하는 방법을 설명합니다. 인수 순서, 공식 문서에 안내된 MD의 한계, 윤년·월말 확인 사항도 다룹니다.

엑셀 / 함수 / LEN, LENB / 문자열의 문자 수, 바이트 수 구하는 함수

엑셀 / 함수 / LEN, LENB / 문자열의 문자 수, 바이트 수 구하는 함수

LEN의 문자 수 계산과 공백·숫자·빈 문자열 처리 예제를 안내합니다. LENB가 파일의 UTF-8 바이트 크기와 다른 점과 이모지의 호환성 차이도 설명합니다.

엑셀 / 함수 / CONCAT, CONCATENATE / 여러 텍스트를 하나로 합치는 함수

엑셀 / 함수 / CONCAT, CONCATENATE / 여러 텍스트를 하나로 합치는 함수

CONCAT·CONCATENATE와 & 연산자로 문자열을 연결하는 방법을 설명합니다. 공백·구분자 추가와 숫자·날짜 표시를 유지하는 방법도 안내합니다.

엑셀 / 행, 열, 워크시트 숨기기, 숨기기 취소하기

엑셀 / 행, 열, 워크시트 숨기기, 숨기기 취소하기

행·열·시트를 숨기고 다시 표시하는 경로를 설명합니다. 첫 행·첫 열, 숨기기 취소 비활성화와 숨김이 보안 기능이 아닌 이유도 안내합니다.

엑셀 / 함수 / LARGE, SMALL / k번째로 큰 값, 작은 값 구하는 함수

엑셀 / 함수 / LARGE, SMALL / k번째로 큰 값, 작은 값 구하는 함수

LARGE·SMALL로 k번째 값을 구하고 MAX·MIN과 비교합니다. 중복 숫자의 순위 처리, 잘못된 k와 빈 범위에서 발생하는 오류도 설명합니다.

엑셀 / 함수 / ABS / 절댓값을 반환하는 함수

엑셀 / 함수 / ABS / 절댓값을 반환하는 함수

ABS로 절댓값과 두 값의 차이 크기를 계산하는 예제를 설명합니다. 합의 절댓값·절댓값의 합 차이와 부호 정보가 사라지는 한계도 다룹니다.