엑셀 / 함수 / REPLACE, REPLACEB / 특정 위치의 문자열을 바꾸는 함수

REPLACE는 문자열에서 시작 위치와 바꿀 문자 수를 지정해 해당 부분을 새 텍스트로 바꿉니다. 같은 단어를 찾아 바꾸는 SUBSTITUTE와 달리 문자의 위치를 기준으로 합니다. REPLACEB는 기존 바이트 단위 함수이며 Microsoft의 현재 문서에서는 사용 중단 예정 함수로 안내합니다.

REPLACE 구문과 인수

=REPLACE(old_text,start_num,num_chars,new_text)

old_text는 원본 문자열, start_num는 1부터 세는 시작 위치, num_chars는 제거할 문자 수, new_text는 넣을 문자열입니다. 원본 셀을 직접 수정하는 것이 아니라 결과 셀에 새 문자열을 반환합니다.

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

문자 위치로 바꾸기

=REPLACE("12345",3,2,"A")
=REPLACE("ABCDE",3,2,"XYZ")

위치를 기준으로 일부 문자를 바꾸는 예제입니다. 첫 수식은 세 번째 문자부터 두 문자 34를 A로 바꾸어 12A5, 두 번째 수식은 CD를 XYZ로 바꾸어 ABXYZE를 반환합니다.

위치를 기준으로 일부 문자를 바꾸는 예제입니다. 첫 수식은 세 번째 문자부터 두 문자 34를 A로 바꾸어 12A5, 두 번째 수식은 CD를 XYZ로 바꾸어 ABXYZE를 반환합니다.

교체할 부분과 새 문자열의 길이는 같지 않아도 됩니다. new_text에 ""을 넣으면 지정한 부분을 삭제합니다. num_chars에 0을 지정하면 원래 문자를 제거하지 않고 그 위치에 새 문자열을 넣습니다.

REPLACEB를 사용하는 기존 파일

REPLACE와 REPLACEB로 문자를 교체하는 비교 예제입니다. 문자 기준과 기존 더블바이트 언어 환경의 바이트 기준은 한글이 섞인 자료에서 서로 다른 결과가 날 수 있습니다.

REPLACE와 REPLACEB로 문자를 교체하는 비교 예제입니다. 문자 기준과 기존 더블바이트 언어 환경의 바이트 기준은 한글이 섞인 자료에서 서로 다른 결과가 날 수 있습니다.

REPLACEB의 바이트 계산은 UTF-8 파일의 실제 크기를 재는 개념이 아닙니다. 기존 수식은 언어 설정과 호환성에 따라 확인하고, 새 텍스트 처리에는 가능한 한 문자 기준 REPLACE를 사용하세요. 이모지가 포함된 자료도 통합 문서의 호환성 버전에 따라 문자 계산을 확인해야 합니다.

오류와 마스킹의 한계

start_num가 1보다 작거나 num_chars가 음수이면 #VALUE! 오류가 날 수 있습니다. 자릿수가 들쑥날쑥하면 고정 위치만으로 원하는 부분을 바꾸기 어려우므로 구분자 위치나 원본 길이를 먼저 검사합니다.

REPLACE로 개인정보 일부를 별표로 표시해도 원본 셀·수식 참조·다른 시트는 남습니다. 배포용 파일은 원본 데이터를 포함하지 않게 별도로 구성하고 확인해야 합니다. 찾은 텍스트 자체를 바꿀 때는 SUBSTITUTE 함수가 적합합니다.

같은 카테고리의 다른 글
엑셀 / @ 입력 시 이메일 링크로 바뀌지 않게 하는 방법

엑셀 / @ 입력 시 이메일 링크로 바뀌지 않게 하는 방법

이메일 자동 링크를 끄는 옵션과 기존 링크 제거를 안내합니다. URL 자동 링크도 함께 꺼지는 영향, HYPERLINK 함수와의 차이를 설명합니다.

엑셀 / VBA / 주석 만드는 방법

엑셀 / VBA / 주석 만드는 방법

작은따옴표로 VBA 주석을 만들고 편집 도구 모음으로 여러 줄을 주석 처리하는 방법을 안내합니다. 문자열 속 작은따옴표와 코드 비활성화의 주의점도 설명합니다.

엑셀 / 함수 / SUMSQ / 제곱의 합 구하는 함수

엑셀 / 함수 / SUMSQ / 제곱의 합 구하는 함수

SUMSQ로 여러 수의 제곱합을 구하는 구문과 범위 예제를 안내합니다. 합의 제곱과의 차이, 통계의 편차 제곱합과의 구분도 설명합니다.

엑셀 / 함수 / SUMPRODUCT / 곱의 합 구하는 함수

엑셀 / 함수 / SUMPRODUCT / 곱의 합 구하는 함수

SUMPRODUCT로 단가·수량 등 같은 위치의 값을 곱해 합산하는 방법을 설명합니다. 배열 크기, 조건 계산과 성능 문제도 함께 확인할 수 있습니다.

엑셀 / 나누기, 몫 구하기, 나머지 구하기

엑셀 / 나누기, 몫 구하기, 나머지 구하기

나눗셈 연산자와 QUOTIENT·MOD의 결과를 비교합니다. 0으로 나누는 오류와 음수에서 몫·나머지가 계산되는 방식도 예제로 설명합니다.

엑셀 / 숫자를 문자(텍스트)로 변경하는 방법 3가지

엑셀 / 숫자를 문자(텍스트)로 변경하는 방법 3가지

텍스트 서식·작은따옴표·텍스트 나누기로 숫자를 텍스트로 다루는 방법을 설명합니다. 기존 숫자의 재입력 필요와 긴 식별번호의 손실 위험도 안내합니다.

엑셀 / 저장 시 기본 파일 형식 설정하는 방법

엑셀 / 저장 시 기본 파일 형식 설정하는 방법

기본 저장 형식을 xlsx·xlsm 등으로 지정하는 과정을 설명합니다. 기존 파일과의 차이, 매크로·CSV·구형 형식의 정보 손실도 안내합니다.

엑셀 / VBA / 매크로 만들고 실행하기

엑셀 / VBA / 매크로 만들고 실행하기

표준 모듈에 SayHello 매크로를 만들고 실행·수정하는 과정을 설명합니다. Sheet1 참조의 의미, 셀 덮어쓰기와 xlsm 저장 시 주의점도 다룹니다.

엑셀 / 중복된 값 찾는 방법, 중복 항목 제거하는 방법

엑셀 / 중복된 값 찾는 방법, 중복 항목 제거하는 방법

중복 값을 표시하는 조건부 서식과 실제 제거를 구분합니다. 한 열·여러 열의 기준 선택, 행 관계 보존과 제거 후 검증·복구도 설명합니다.

엑셀 / 함수 / YEAR, MONTH, DAY / 년, 월, 일 반환하는 함수

엑셀 / 함수 / YEAR, MONTH, DAY / 년, 월, 일 반환하는 함수

YEAR·MONTH·DAY로 날짜에서 연·월·일을 추출하고 일련번호 구조를 설명합니다. 빈 셀과 텍스트 날짜, 날짜 체계의 차이를 확인할 수 있습니다.