이름 마스킹 하기
함수 조합
사용 함수 및 정의
이 함수 조합은 두 글자 이상의 이름을 대상으로 하며, 다음과 같은 규칙으로 이름을 마스킹하여 텍스트 형식으로 반환합니다:
- 이름이 두 글자인 경우: 이름의 두 번째 글자를 * 문자로 마스킹합니다. (예: 이민 -> 이*)
- 이름이 세 글자인 경우: 이름의 두 번째 글자를 * 문자로 마스킹합니다. (예: 박철수 -> 박*수)
- 이름이 네 글자 이상인 경우: 이름의 첫 번째와 마지막 글자를 제외한 모든 중간 글자를 '*' 문자로 마스킹합니다. (예: 남궁민준 -> 남**준)
함수 조합 사용법
=REPLACE(텍스트, 2, MAX(LEN(텍스트) - 2,1), REPT("*", MAX(LEN(텍스트) - 2,1)))
여기서 텍스트
는 마스킹할 이름이 포함된 셀 또는 직접 입력한 텍스트 문자열을 의미하며, 두 글자 이상이어야 합니다.
사용된 개별 함수 정의
LEN(텍스트)
: 셀에 입력된 텍스트의 문자 수를 반환합니다.MAX(숫자1, [숫자2], ...)
: 인수 목록에서 가장 큰 값을 반환합니다.REPLACE(원본 텍스트, 시작 위치, 바꿀 문자수, 새 텍스트)
:원본 텍스트
내의 문자열을시작 위치
부터바꿀 문자수
만큼의 글자를새 텍스트
로 바꿉니다.REPT(텍스트, 반복횟수)
:텍스트
를반복 횟수
만큼 반복하여 표시합니다.
함수 예제 및 설명
예제 데이터:
다음은 이름 마스킹 함수 조합을 적용할 예제 데이터입니다.
◢ | A | B (수식 적용 결과) |
---|---|---|
1 | 원본 이름 | 마스킹된 이름 |
2 | 이민 | 이* |
3 | 박철수 | 박*수 |
4 | 남궁민준 | 남**준 |
5 | 황보관준희 | 황***희 |
6 | 김 | #VALUE! (오류 발생) |
7 | #VALUE! (오류 발생) |
계산 과정 단계별 설명:
A4
셀의 "남궁민준" (네 글자 이름)을 예로 들어 계산 과정을 설명합니다.
=REPLACE(A4, 2, MAX(LEN(A4)-2, 1), REPT("*", MAX(LEN(A4) - 2, 1)))
LEN(A4)
:LEN("남궁민준")
은 이름의 길이인4
를 반환합니다.MAX(LEN(A4)-2, 1)
계산:- 총 글자 수에서 2를 빼지만, 외자 이름을 고려하여 MAX를 이용해 최소 1을 보장합니다.
LEN(A4)-2
는4-2 = 2
입니다.MAX(2, 1)
은2
를 반환합니다. 이 값이 마스킹할 문자 수(바꿀문자수
)이자, 반복할 '*'의 개수가 됩니다.
REPT("*", MAX(LEN(A4)-2,1))
계산:REPT("*", 2)
는**
(별표 두 개) 문자열을 생성합니다. 이 값이새텍스트
가 됩니다.
REPLACE
함수 실행:REPLACE(A4, 2, 2, "**")
REPLACE("남궁민준", 2, 2, "**")
- "남궁민준" 텍스트의 2번째 위치('궁')부터 2개의 문자('궁민')를
**
로 대체합니다.
- 최종 결과: "남**준"이 반환됩니다.
A2
셀의 "이민" (두 글자 이름)의 경우:
LEN(A2)
= 2.MAX(LEN(A2)-2, 1)
=MAX(2-2, 1)
=MAX(0, 1)
=1
.REPT("*", 1)
=*
.REPLACE(A2, 2, 1, "*")
=REPLACE("이민", 2, 1, "*")
= "이*".
기타 고려 사항
- 입력값의 길이: 이 수식은 이름의 길이가 최소 2글자 이상일 때 정상적으로 작동하도록 설계되었습니다. 이름이 한 글자이거나 셀이 비어있는 경우,
REPLACE
함수의시작위치
인수가 텍스트 길이보다 커지거나바꿀문자수
가 적절하지 않아#VALUE!
오류가 발생합니다. - 오류 처리 방안: 만약 한 글자 이름이나 빈 셀 등에 대해 오류 대신 다른 값(예: 원본 텍스트 그대로 표시)을 반환하고 싶다면,
IF
함수나IFERROR
함수를 사용하여 수식을 보완할 수 있습니다. 예를 들어, 두 글자 미만일 경우 원본을 반환하려면 다음과 같이 수정할 수 있습니다:=IF(LEN(텍스트)>=2, REPLACE(텍스트,2,MAX(LEN(텍스트)-2,1),REPT("*",MAX(LEN(텍스트)-2,1))), 텍스트)
- 호환성:
REPLACE
,LEN
,MAX
,REPT
함수는 Excel의 매우 오래된 버전부터 기본적으로 제공되는 함수들이므로, 대부분의 Excel 환경에서 문제 없이 사용할 수 있습니다. - 띄어쓰기 및 특수문자: 이름에 띄어쓰기나 다른 특수문자가 포함된 경우, 이들도 모두 문자 길이에 포함되어 마스킹 규칙에 따라 동일하게 처리됩니다.