본문 바로가기

업무 프로그램/MS 엑셀

엑셀 가변길이 마스킹

목차

    지난번 포스팅에서는 개인정보 마스킹에 대해 알아봤습니다.

    해당 포스팅에서 REPLACE 함수에 대해 설명이 되어 있으므로 본 포스팅에서는 설명하지 않습니다.

    REPLACE 함수를 몰라서 진행이 힘드신 경우 아래 포스팅을 보고 오시면 도움이 되실 것 같습니다.

    엑셀에서 개인정보 감추기(고정된 위치 마스킹)

    전화번호, 주민등록번호, 카드번호 등은 길이가 고정이거나 변화가 크지 않습니다.

    하지만 은행 등 서로 다른 기관에서 관리하는 계좌번호와 같은 개인정보는 길이와 형식이 다릅니다.

    이런 경우는 지난 포스팅처럼 마스킹하기가 힘들고 SEARCH 함수를 사용하여 길이에 대한 단서를 찾아주어야 합니다.

     

    엑셀 가변길이 마스킹 예시
    엑셀 가변길이 마스킹 예시

     

     

     

     


    1. 길이가 고정되지 않은 데이터 마스킹

    엑셀 길이가 고정되지 않은 데이터 마스킹
    엑셀 길이가 고정되지 않은 데이터 마스킹

     

    1. 마스킹된 예약번호가 입력될 셀(F2)을 클릭합니다.

    2. 수식 탭을 클릭합니다.

    3. 함수 삽입을 클릭합니다.

    4. 함수 검색에서 replace를 입력합니다.

    5. 엔터 또는 검색을 클릭합니다.

    6. REPLACE 함수를 클릭하여 선택합니다.

    7. 확인을 클릭합니다.

     

    엑셀 길이가 고정되지 않은 데이터 마스킹2
    엑셀 길이가 고정되지 않은 데이터 마스킹2

     

    8. Old_text에 원본 예약번호(B2)가 있는 셀을 입력합니다.

    9. Start_num에는 SEARCH("-",B2)+1을 입력합니다.

        원본 예약번호(B2)에서 "-"가 문자열중 몇번째에 있는지를 찾아주는 역할입니다.

        "+1"을 하는 이유는 "-"는 3번째이지만 마스킹 기호인 "*"을 입력하는 위치는 4번째이기 때문입니다.

    10. Num_chars에는 3을 입력합니다.

          마스킹하고 싶은 자릿수입니다.

          4자리를 마스킹하고 싶다면 4를 입력합니다.

    11. New_text는 Num_chars와 같은 갯수의 "***"을 입력합니다.

          Num_chars가 4라면 "****"을 입력합니다.

    12. 확인을 클릭하여 적용시킵니다.

     

    길게 썼지만 실제로 해보시면 금방 하실 수 있습니다.

    또한 F2 셀에 바로 아래 함수를 입력하여도 결과는 같습니다.

     

    =REPLACE(B2,SEARCH("-",B2)+1,3,"***")

     

    하지만 함수 검색을 하여 인수를 입력하는 이유는 익숙하지 않은 함수를 사용할 때 실수를 줄이기 위해서입니다.

    수식 입력에 익숙하신 분들은 위 내용을 바로 입력해서 적용하시면 됩니다.

     

    엑셀 길이가 고정되지 않은 데이터 마스킹3
    엑셀 길이가 고정되지 않은 데이터 마스킹3

     

    채우기 핸들을 드래그하여 다른 셀에도 수식을 적용시켜 줍니다.

    이상 가변적인 길이에 대한 마스킹은 끝났습니다.

    처음 나온 SEARCH 함수에 대한 사용법을 끝으로 포스팅을 마칩니다.

     

     

    1-1. SEARCH 함수 사용법

    SEARCH(find_text,within_text,[start_num])
    find_text: 검색하고 싶은 문자 또는 텍스트입니다. 필수입니다.
    within_text: 대상이 되는 텍스트입니다. 필수입니다.
    start_num: 검색을 시작할 문자 위치입니다. 선택요소이며 생략하면 처음부터 찾습니다.

     

    SEARCH 함수에 익숙해지시면 start_num을 이용하여 두 번째, 세 번째에 나오는 find_text를 찾을 수 있습니다.

    예를 들어 아래와 같은 텍스트에서 두 번째 오는 "-"의 위치를 찾고 싶다면 start_num을 이용합니다.

     

    222-42356-12345

     

    첫 번째로 오는 "-"의 위치는 4입니다.

    그렇다면 start_num은 4를 초과하는 값을 아래와 같이 넣어주면 됩니다.

     

    =SEARCH("-",A1,5)

     

    그러면 두 번째 "-"의 위치인 10을 반환할 것입니다.