Powered ByGemini

이름 마스킹 하기

함수 조합

사용 함수 및 정의

이 함수 조합은 두 글자 이상의 이름을 대상으로 하며, 다음과 같은 규칙으로 이름을 마스킹하여 텍스트 형식으로 반환합니다:

  • 이름이 두 글자인 경우: 이름의 두 번째 글자를 * 문자로 마스킹합니다. (예: 이민 -> 이*)
  • 이름이 세 글자인 경우: 이름의 두 번째 글자를 * 문자로 마스킹합니다. (예: 박철수 -> 박*수)
  • 이름이 네 글자 이상인 경우: 이름의 첫 번째와 마지막 글자를 제외한 모든 중간 글자를 '*' 문자로 마스킹합니다. (예: 남궁민준 -> 남**준)

함수 조합 사용법

=REPLACE(텍스트, 2, MAX(LEN(텍스트) - 2,1), REPT("*", MAX(LEN(텍스트) - 2,1)))

여기서 텍스트는 마스킹할 이름이 포함된 셀 또는 직접 입력한 텍스트 문자열을 의미하며, 두 글자 이상이어야 합니다.

사용된 개별 함수 정의

  • LEN(텍스트): 셀에 입력된 텍스트의 문자 수를 반환합니다.
  • MAX(숫자1, [숫자2], ...): 인수 목록에서 가장 큰 값을 반환합니다.
  • REPLACE(원본 텍스트, 시작 위치, 바꿀 문자수, 새 텍스트): 원본 텍스트 내의 문자열을 시작 위치부터 바꿀 문자수만큼의 글자를 새 텍스트로 바꿉니다.
  • REPT(텍스트, 반복횟수): 텍스트반복 횟수만큼 반복하여 표시합니다.

함수 예제 및 설명

예제 데이터:

다음은 이름 마스킹 함수 조합을 적용할 예제 데이터입니다.

AB (수식 적용 결과)
1원본 이름마스킹된 이름
2이민이*
3박철수박*수
4남궁민준남**준
5황보관준희황***희
6#VALUE! (오류 발생)
7#VALUE! (오류 발생)

계산 과정 단계별 설명:

A4 셀의 "남궁민준" (네 글자 이름)을 예로 들어 계산 과정을 설명합니다.

=REPLACE(A4, 2, MAX(LEN(A4)-2, 1), REPT("*", MAX(LEN(A4) - 2, 1)))
  1. LEN(A4): LEN("남궁민준")은 이름의 길이인 4를 반환합니다.
  2. MAX(LEN(A4)-2, 1) 계산:
    • 총 글자 수에서 2를 빼지만, 외자 이름을 고려하여 MAX를 이용해 최소 1을 보장합니다.
    • LEN(A4)-24-2 = 2입니다.
    • MAX(2, 1)2를 반환합니다. 이 값이 마스킹할 문자 수(바꿀문자수)이자, 반복할 '*'의 개수가 됩니다.
  3. REPT("*", MAX(LEN(A4)-2,1)) 계산:
    • REPT("*", 2)** (별표 두 개) 문자열을 생성합니다. 이 값이 새텍스트가 됩니다.
  4. REPLACE 함수 실행: REPLACE(A4, 2, 2, "**")
    • REPLACE("남궁민준", 2, 2, "**")
    • "남궁민준" 텍스트의 2번째 위치('궁')부터 2개의 문자('궁민')를 **로 대체합니다.
  5. 최종 결과: "남**준"이 반환됩니다.

A2 셀의 "이민" (두 글자 이름)의 경우:

  1. LEN(A2) = 2.
  2. MAX(LEN(A2)-2, 1) = MAX(2-2, 1) = MAX(0, 1) = 1.
  3. REPT("*", 1) = *.
  4. 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 환경에서 문제 없이 사용할 수 있습니다.
  • 띄어쓰기 및 특수문자: 이름에 띄어쓰기나 다른 특수문자가 포함된 경우, 이들도 모두 문자 길이에 포함되어 마스킹 규칙에 따라 동일하게 처리됩니다.