단어를 숫자 변환

참고: 사용자 언어로 가능한 한 빨리 가장 최신의 도움말 콘텐츠를 제공하고자 합니다. 이 페이지는 자동화를 통해 번역되었으며 문법 오류나 부정확한 설명을 포함할 수 있습니다. 이 목적은 콘텐츠가 사용자에게 유용하다는 것입니다. 이 페이지 하단의 정보가 도움이 되었다면 알려주세요. 쉽게 참조할 수 있는 영어 문서가 여기 있습니다.

Excel 워크시트에서 영어 단어와 숫자를 표시 하는 기본 함수 되지 않지만 VBA (Visual Basic for Applications) 모듈에는 다음과 같은 SpellNumber 함수 코드를 붙여 넣어이 기능을 추가할 수 있습니다. 이 함수를 사용 하면 22.50 20 두 달러 50 센트로 표시 됩니다 달러와 센트 수치를 단어에서 수식으로 변환 수 있습니다. 이 검사를 인쇄 하려면 서식 파일로 Excel을 사용 중인 경우 매우 유용할 수 있습니다.

단어로 표시 하지 않고 텍스트 형식으로 숫자 값으로 변환 하려면 TEXT 함수 를 사용 합니다.

참고: Microsoft는 보증을 포함 하지 않고 설명을을 위한 프로그래밍 예제를 제공 합니다. 이 포함 되지만 목적 또는 특정 목적에 대 한 체력 단련 보증도로 제한 되지 않습니다. 이 문서를 만들고 디버그 절차를 사용 하는 도구 및 VBA 프로그래밍 언어에 익숙한 가정 합니다. Microsoft 기술 지원 엔지니어 특정 프로시저의 기능에 설명 하는 데 도움이 됩니다. 그러나이 예제에서는 추가 기능을 제공 하거나 특정 요구 사항을 충족 하는 절차를 구성 하려면 수정 하지 않습니다.

단어에 숫자를 변환 하려면 SpellNumber 함수 만들기

  1. 바로 가기 키, Visual Basic Editor (VBE)를 열려면 Alt + f 11 을 사용 합니다.

    참고: 리본 메뉴에 개발 도구 탭 표시 하 여 Visual Basic Editor를 액세스할 수 있습니다.

  2. 삽입 탭을 클릭 하 고 모듈 을 클릭 합니다.

    삽입 메뉴에서 모듈을 클릭 합니다.
  3. 다음 코드 줄을 복사 합니다.

    참고: 이 코드 숫자 전체 워크시트에서 텍스트를 변환 하는 작업을 자동화 함수 UDF (사용자 정의)라고 합니다.

    Option Explicit
    
    'Main Function
    
    Function SpellNumber(ByVal MyNumber)
    
    Dim Dollars, Cents, Temp
    
    Dim DecimalPlace, Count
    
    ReDim Place(9) As String
    
    Place(2) = " Thousand "
    
    Place(3) = " Million "
    
    Place(4) = " Billion "
    
    Place(5) = " Trillion "
    
    ' String representation of amount.
    
    MyNumber = Trim(Str(MyNumber))
    
    ' Position of decimal place 0 if none.
    
    DecimalPlace = InStr(MyNumber, ".")
    
    ' Convert cents and set MyNumber to dollar amount.
    
    If DecimalPlace > 0 Then
    
    Cents = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & _ "00", 2))
    
    MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))
    
    End If
    
    Count = 1
    
    Do While MyNumber <> ""
    
    Temp = GetHundreds(Right(MyNumber, 3))
    
    If Temp <> "" Then Dollars = Temp & Place(Count) & Dollars
    
    If Len(MyNumber) > 3 Then
    
    MyNumber = Left(MyNumber, Len(MyNumber) - 3)
    
    Else
    
    MyNumber = ""
    
    End If
    
    Count = Count + 1
    
    Loop
    
    Select Case Dollars
    
    Case ""
    
    Dollars = "No Dollars"
    
    Case "One"
    
    Dollars = "One Dollar"
    
    Case Else
    
    Dollars = Dollars & " Dollars"
    
    End Select
    
    Select Case Cents
    
    Case ""
    
    Cents = " and No Cents"
    
    Case "One"
    
    Cents = " and One Cent"
    
    Case Else
    
    Cents = " and " & Cents & " Cents"
    
    End Select
    
    SpellNumber = Dollars & Cents
    
    End Function
    
    
    ' Converts a number from 100-999 into text
    
    Function GetHundreds(ByVal MyNumber)
    
    Dim Result As String
    
    If Val(MyNumber) = 0 Then Exit Function
    
    MyNumber = Right("000" & MyNumber, 3)
    
    ' Convert the hundreds place.
    
    If Mid(MyNumber, 1, 1) <> "0" Then
    
    Result = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred "
    
    End If
    
    ' Convert the tens and ones place.
    
    If Mid(MyNumber, 2, 1) <> "0" Then
    
    Result = Result & GetTens(Mid(MyNumber, 2))
    
    Else
    
    Result = Result & GetDigit(Mid(MyNumber, 3))
    
    End If
    
    GetHundreds = Result
    
    End Function
    
    
    ' Converts a number from 10 to 99 into text.
    
    
    Function GetTens(TensText)
    
    Dim Result As String
    
    Result = "" ' Null out the temporary function value.
    
    If Val(Left(TensText, 1)) = 1 Then ' If value between 10-19...
    
    Select Case Val(TensText)
    
    Case 10: Result = "Ten"
    
    Case 11: Result = "Eleven"
    
    Case 12: Result = "Twelve"
    
    Case 13: Result = "Thirteen"
    
    Case 14: Result = "Fourteen"
    
    Case 15: Result = "Fifteen"
    
    Case 16: Result = "Sixteen"
    
    Case 17: Result = "Seventeen"
    
    Case 18: Result = "Eighteen"
    
    Case 19: Result = "Nineteen"
    
    Case Else
    
    End Select
    
    Else ' If value between 20-99...
    
    Select Case Val(Left(TensText, 1))
    
    Case 2: Result = "Twenty "
    
    Case 3: Result = "Thirty "
    
    Case 4: Result = "Forty "
    
    Case 5: Result = "Fifty "
    
    Case 6: Result = "Sixty "
    
    Case 7: Result = "Seventy "
    
    Case 8: Result = "Eighty "
    
    Case 9: Result = "Ninety "
    
    Case Else
    
    End Select
    
    Result = Result & GetDigit _
    
    (Right(TensText, 1)) ' Retrieve ones place.
    
    End If
    
    GetTens = Result
    
    End Function
    
    
    ' Converts a number from 1 to 9 into text.
    
    Function GetDigit(Digit)
    
    Select Case Val(Digit)
    
    Case 1: GetDigit = "One"
    
    Case 2: GetDigit = "Two"
    
    Case 3: GetDigit = "Three"
    
    Case 4: GetDigit = "Four"
    
    Case 5: GetDigit = "Five"
    
    Case 6: GetDigit = "Six"
    
    Case 7: GetDigit = "Seven"
    
    Case 8: GetDigit = "Eight"
    
    Case 9: GetDigit = "Nine"
    
    Case Else: GetDigit = ""
    
    End Select
    
    End Function
  4. 코드 줄을 붙여 넣습니다는 Module1 (코드) 상자입니다.

    Module1에 붙여 넣은 코드 (코드) 상자입니다.
  5. Alt + Q를 눌러 Excel로 돌아갑니다. SpellNumber 함수를 사용할 준비가 되었습니다.

    참고: 이 함수는 현재 통합 문서에 대해서만 작동합니다. 다른 통합 문서에서이 함수를 사용 하 여 복사 하 고 해당 통합 문서에 있는 코드를 붙여 단계를 반복 해야 합니다.

맨 위로 이동

SpellNumber 함수를 사용 하 여 개별 셀에서

  1. 작성 된 숫자를 표시 하려면 셀에 수식 = SpellNumber (A1)를 입력 A1 참인 번호가 포함 된 셀 변환할 합니다. 값을 수동으로 입력할 수 있습니다 같은 SpellNumber(22.50) = 합니다.

  2. Enter 키를 눌러 수식을 확인 합니다.

맨 위로 이동

SpellNumber 함수 통합 문서 저장

Excel의 표준 매크로 제외 통합 문서 형식 (.xlsx) 매크로 함수를 사용한 통합 문서를 저장할 수 없습니다. 파일 을 클릭 하면 > 저장 합니다. VB 프로젝트 대화 상자가 열립니다. 아니요 를 클릭 합니다.

클릭 하 여 VB 프로젝트 대화 상자에서 아니요

현재 형식으로 파일을 유지 하려면 excel 매크로 사용 통합 문서 (.xlsm) 으로 파일을 저장할 수 있습니다.

  1. 파일 > 다른 이름으로 저장을 클릭합니다.

  2. 파일 형식 드롭다운 메뉴를 클릭 하 고 excel 매크로 사용 통합 문서 를 선택 합니다.

  3. 저장을 클릭합니다.

맨 위로 이동

참고 항목

TEXT 함수

Office 기술 확장
교육 살펴보기
새로운 기능 우선 가져오기
Office Insider 참여

이 정보가 유용한가요?

의견 주셔서 감사합니다!

피드백을 주셔서 감사합니다. Office 지원 에이전트와 연락하는 것이 도움이 될 것 같습니다.

×