엑셀 금액 한글 변환 방법 3가지 (함수, VBA 매크로, 셀서식)

엑셀 금액 한글 변환 방법은 VBA 매크로를 이용하는 방식부터 함수나 셀서식을 활용하는 방법까지 매우 다양합니다. 회계 업무나 세금계산서, 계약서, 청구서, 보고서, 공문서를 작성할 때 숫자로 입력된 금액을 한글로 변환하고 싶다면, 지금 바로 엑셀 금액 한글 표시 방법을 확인해 보세요.

엑셀-금액-한글-변환-방법

엑셀 금액 한글 변환 방법 ① VBA 매크로

엑셀 금액 한글 변환을 자동화하려면, VBA 매크로를 활용하는 것이 가장 효과적입니다. 매크로를 사용하면 모든 금액을 반복 작업 없이 한 번에 한글로 변환할 수 있으며, 대용량 데이터도 안정적으로 처리할 수 있어 업무 효율을 획기적으로 높일 수 있습니다.

Visual Basic Editor 열기

엑셀에서 단축키 <ALT + F11>을 누르거나, 상단 메뉴에서 [개발도구] – [Visual Basic]을 클릭합니다.

엑셀-visual-basic-editor-열기

매크로 모듈 삽입

VBA 편집기에서 [삽입] – [모듈] 메뉴를 클릭해 새로운 모듈(예: Module 1)을 추가합니다.

엑셀-매크로-모듈-삽입하기

VBA 코드 삽입

아래의 매크로 코드를 복사한 후, 엑셀 VBA 편집창에 붙여 넣습니다.

엑셀-vba-매크로-코드-삽입하기

금액 Only 한글로 표시

엑셀에서 숫자로 표시된 금액을 순수 한글로 변환하고 싶다면, 아래 코드를 복사한 후 VBA 편집창에 붙여 넣으세요. [코드 복사] 버튼을 클릭하면 해당 코드를 간편하게 복사할 수 있습니다.

  • 코드 적용 예시) 1,234,567,890 → 일십이억삼천사백오십육만칠천팔백구십 원정
Function 숫자한글변환(금액 As Double) As String
    Dim 단위4자리 As Variant
    Dim 한글숫자 As Variant
    Dim 자리단위 As Variant
    Dim i As Integer, j As Integer
    Dim 금액문자 As String, 부분 As String, result As String
    Dim pos As Integer, lenPart As Integer
    
    한글숫자 = Array("", "일", "이", "삼", "사", "오", "육", "칠", "팔", "구")
    자리단위 = Array("", "십", "백", "천")
    단위4자리 = Array("", "만", "억", "조", "경")
    
    금액문자 = Format(Int(금액), "0") ' 정수로 처리
    pos = 0
    result = ""
    
    Do While Len(금액문자) > 0
        lenPart = IIf(Len(금액문자) > 4, 4, Len(금액문자))
        부분 = Right(금액문자, lenPart)
        금액문자 = Left(금액문자, Len(금액문자) - lenPart)
        
        Dim temp As String
        temp = ""
        For i = 1 To Len(부분)
            Dim digit As Integer
            digit = CInt(Mid(부분, Len(부분) - i + 1, 1))
            If digit > 0 Then
                temp = 한글숫자(digit) & 자리단위(i - 1) & temp
            End If
        Next i
        
        If temp <> "" Then
            result = temp & 단위4자리(pos) & result
        End If
        
        pos = pos + 1
    Loop
    
    If result = "" Then
        숫자한글변환 = "영 원정"
    Else
        숫자한글변환 = result & " 원정"
    End If
End Function

숫자+한글 조합 금액 표시 코드

엑셀에서 숫자로 표시된 금액을 ‘숫자+한글’ 조합으로 변환하고 싶다면, 아래 코드를 복사한 후 VBA 편집창에 붙여 넣으세요. [코드 복사] 버튼을 클릭하면 해당 코드를 간편하게 복사할 수 있습니다.

  • 코드 적용 예시) 1,234,567,890 → 12억 3,456만 7,890원
Function 숫자한글변환(금액 As Double) As String
    Dim 단위4자리 As Variant
    Dim i As Integer
    Dim 금액문자 As String, 부분 As String, result As String
    Dim pos As Integer, lenPart As Integer
    
    단위4자리 = Array("", "만", "억", "조", "경")
    
    금액문자 = Format(Int(금액), "0") ' 정수로 처리
    pos = 0
    result = ""
    
    Do While Len(금액문자) > 0
        lenPart = IIf(Len(금액문자) > 4, 4, Len(금액문자))
        부분 = Right(금액문자, lenPart)
        금액문자 = Left(금액문자, Len(금액문자) - lenPart)
        
        ' 숫자에 천 단위 쉼표 추가
        Dim temp As String
        temp = Format(CLng(부분), "#,##0")
        
        If CLng(부분) > 0 Then
            result = temp & 단위4자리(pos) & IIf(result = "", "", " ") & result
        End If
        
        pos = pos + 1
    Loop
    
    If result = "" Then
        숫자한글변환 = "0원"
    Else
        숫자한글변환 = result & "원"
    End If
End Function

매크로 코드 사용 방법

VBA 코드 삽입 후 엑셀 시트로 돌아와 원하는 셀에 ‘=숫자한글변환(A1)’ 형태로 값을 입력하면, 숫자로 표시된 금액이 한글로 변환됩니다. ‘A1’은 변환하려는 숫자 금액이 입력된 셀 주소입니다.

엑셀-vba-매크로-코드-사용-방법

엑셀 금액 한글 변환 방법 ② 함수 수식

엑셀에는 숫자를 한글로 자동 변환해 주는 기본 함수는 없지만, 여러 수식을 조합하면 숫자로 표시된 금액을 한글로 변환할 수 있습니다. 다만, 이 방법은 금액 단위가 커질수록 수식이 길어지고 복잡해지므로 간단한 자릿수의 금액만 변환하고자 할 때 활용하는 것이 좋습니다.

숫자를 한글로만 표시하는 함수

다음은 0부터 9,999까지의 숫자를 한글로 변환해 주는 엑셀 함수입니다. 코드를 복사한 후, 셀에 붙여 넣으세요. 단, 더 큰 단위의 숫자(만, 억, 조 등)를 처리하려면 함수를 추가해서 사용해야 합니다. (함수 미추가 시 오류 발생)

=IF(A1=0,"영",CONCAT(
  IF(INT(A1/1000)=0,"",CHOOSE(INT(A1/1000),"일","이","삼","사","오","육","칠","팔","구")&"천"),
  IF(MOD(INT(A1/100),10)=0,"",CHOOSE(MOD(INT(A1/100),10),"일","이","삼","사","오","육","칠","팔","구")&"백"),
  IF(MOD(INT(A1/10),10)=0,"",CHOOSE(MOD(INT(A1/10),10),"일","이","삼","사","오","육","칠","팔","구")&"십"),
  IF(MOD(A1,10)=0,"",CHOOSE(MOD(A1,10),"일","이","삼","사","오","육","칠","팔","구"))
 ))
  • IF: 조건에 따라 다른 값을 반환하는 함수
  • INT: 숫자의 소수점 이하를 버리고 정수 부분만 남기는 함수
  • MOD: 숫자를 나눈 후 나머지를 구하는 함수
  • CHOOSE: 지정한 번호에 해당하는 값을 목록에서 선택하는 함수
  • CONCAT: 여러 텍스트 문자열을 하나로 결합하는 함수

숫자+한글 조합 금액 표시 함수

아래 엑셀 함수는 금액을 ‘숫자+한글’이 조합된 형태로 변환해 줍니다. 코드를 복사한 후, 셀에 붙여 넣으세요. 단, 조 단위 이상(1조 이상)의 더 큰 단위를 처리하려면 함수를 추가해서 사용해야 합니다.

=IF(A1<0,"음수 금액은 처리 불가", IF(A1=0,"0원", CONCAT(
IF(A1>=100000000,TEXT(INT(A1/100000000),"#,##0")&"억 ",""), IF(A1>=10000,TEXT(MOD(INT(A1/10000),10000),"#,##0")&"만 ",""), TEXT(MOD(A1,10000),"#,##0")&"원" )))
  • IF: 조건에 따라 다른 값을 반환하는 함수
  • CONCAT: 여러 텍스트 문자열을 하나로 결합하는 함수
  • INT: 숫자의 소수점 이하를 버리고 정수 부분만 남기는 함수
  • MOD: 숫자를 나눈 후 나머지를 구하는 함수
  • TEXT: 숫자를 지정된 형식의 텍스트로 변환하는 함수

엑셀 금액 한글 변환 방법 ③ 셀서식 변경

엑셀에서는 셀서식 변경만으로도 숫자로 입력된 금액을 손쉽게 한글로 변환할 수 있습니다. 다만, 셀서식을 활용한 금액 한글 변환은 시각적으로만 한글로 표시될 뿐, 실제 셀 데이터 값은 여전히 숫자로 남아 있습니다. 따라서 SUM, AVERAGE 같은 다른 계산 작업을 할 때는 숫자로 인식되며, 복잡한 금액 표기나 세밀한 표현은 셀서식만으로는 구현하기 어렵습니다.

셀 범위 선택

한글로 변환하고 싶은 숫자가 입력된 셀 또는 셀 범위를 마우스로 지정합니다.

한글-변환-숫자-셀-범위-선택하기

셀서식 메뉴 열기

선택한 셀에서 단축키 <Ctrl+1>을 누르거나, 마우스 우클릭 후 [셀서식] 메뉴를 클릭합니다.

셀서식-메뉴-열기-단축키

숫자 서식 변경

[표시형식] 탭에서 [기타] 항목을 선택한 뒤, “숫자(한글)” 옵션을 클릭합니다. 마지막으로 [확인] 버튼을 클릭하면 숫자가 한글로 변환되어 표시됩니다.

  • 예시) 123456789 → 일억이천삼백사십오만육천칠백팔십구
셀서식-숫자-한글-표시-옵션-선택하기


▼ 카테고리 다른 글

한글 네모 체크 박스 표시 방법 3가지

한글 서명 넣기 (한글 문서에 서명 및 사인 넣는 방법)

한글 쪽 복사 붙여넣기 3가지 방법

한글 분수 입력 방법 (한글 수식 단축키, 명령어 안내)

한글 각주 다는 법 단축키 안내 – 한글 주석 삽입 방법

한글 두쪽 보기 전환 방법 – 한글 여러 쪽 보기 설정하는 법

한글 꼬리말 없애기 – 쉽게 배우는 한글 머리말, 꼬리말 삭제 방법

Leave a Comment