엑셀에서 인도 루피 및 기타 통화로 숫자를 단어로 변환하기 (2025년 버전)
다음은 엑셀에서 숫자를 인도 루피 또는 기타 통화로 단어로 변환하는 방법입니다.
인보이스, 견적서, 세금 신고서, 수표 또는 지불 증명서와 같은 금융 문서를 다룰 때, 통화 값을 숫자와 글로 된 형식 모두로 표현해야 하는 경우가 많습니다. 이는 전문성을 더하고 사기나 오해를 방지하는 데 도움이 됩니다.
예시
마이크로소프트 엑셀에는 숫자를 단어로 변환하는 내장 기능이 없지만, VBA, LAMBDA 함수 또는 올인원 Kutools for Excel 추가 기능을 통해 이를 효과적으로 수행할 수 있는 여러 가지 방법이 있습니다.
VBA를 사용하여 인도 루피로 숫자를 단어로 변환하기 (모든 Microsoft 버전)
LAMBDA 함수를 사용하여 인도 루피로 숫자를 단어로 변환하기 (Microsoft 365 전용)
USD, EUR 및 30개 이상의 다른 통화로 숫자를 단어로 변환하기 (모든 Microsoft 버전)
VBA를 사용하여 인도 루피로 숫자를 단어로 변환하기 (모든 Microsoft 버전)
모든 엑셀 버전의 사용자에게 VBA(Visual Basic for Applications)는 인도 번호 체계(예: 천, 락, 크로어)를 사용하여 숫자를 단어로 변환하는 맞춤형 방법을 제공합니다.
1단계. Alt + F11을 눌러 VBA 편집기(Microsoft Visual Basic for Applications 창)를 엽니다.

2단계. 삽입 > 모듈로 이동합니다.

3단계. VBA 코드를 모듈에 붙여넣습니다.
인도 루피로 숫자를 단어로 변환하기
Function ConvertToRupees(ByVal MyNumber)
'UpdatebyExtendoffice
Dim Units As String, SubUnits As String, TempStr As String
Dim DecimalPlace As Integer, Count As Integer
Dim Place(9) As String
Place(2) = " Thousand "
Place(3) = " Lakh "
Place(4) = " Crore "
MyNumber = Trim(Str(MyNumber))
DecimalPlace = InStr(MyNumber, ".")
If DecimalPlace > 0 Then
SubUnits = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & "00", 2))
MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))
End If
Count = 1
Do While MyNumber <> ""
TempStr = GetHundreds(Right(MyNumber, 3))
If TempStr <> "" Then Units = TempStr & Place(Count) & Units
If Len(MyNumber) > 3 Then
MyNumber = Left(MyNumber, Len(MyNumber) - 3)
Else
MyNumber = ""
End If
Count = Count + 1
Loop
ConvertToRupees = "Rupees " & Application.WorksheetFunction.Trim(Units)
If SubUnits <> "" Then
ConvertToRupees = ConvertToRupees & " and " & SubUnits & " Paise"
End If
ConvertToRupees = ConvertToRupees & " Only"
End Function
Private Function GetHundreds(ByVal MyNumber)
Dim Result As String
If Val(MyNumber) = 0 Then Exit Function
MyNumber = Right("000" & MyNumber, 3)
If Mid(MyNumber, 1, 1) <> "0" Then
Result = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred "
End If
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
Private Function GetTens(TensText)
Dim Result As String
If Val(Left(TensText, 1)) = 1 Then
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"
End Select
Else
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 "
End Select
Result = Result & GetDigit(Right(TensText, 1))
End If
GetTens = Result
End Function
Private 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단계. 저장하고 엑셀로 돌아갑니다.
5단계. 셀을 선택하고 다음과 같이 수식을 사용합니다:
Enter 키를 누릅니다.

💡 팁: 이 방법은 소수점(파이사)을 지원하며 오프라인에서도 작동합니다.
VBA 사용의 제한사항
- 통합 문서를 매크로가 활성화된 파일(.xlsm)로 저장해야 합니다.
- 일부 환경에서는 보안 설정에 의해 매크로가 차단될 수 있습니다.
다른 통화(USD, EUR 등)로 숫자를 단어로 변환하기
"달러" 또는 "유로"와 같은 다른 통화로 출력을 맞춤설정하려면 VBA 함수의 문자열 값을 조정할 수 있습니다. 아래는 간단하고 유연한 버전의 함수입니다.
유연한 VBA 코드 템플릿 (맞춤형 통화)
'UpdatebyExtendoffice
Public Function NumberToWordsCustom(ByVal num As Double, Optional ByVal currency2 As String, Optional ByVal subCurrency As String) As String
Dim result As String
Dim dollars As Long
Dim cents As Long
dollars = Int(num)
cents = Round((num - dollars) * 100)
If Len(currency2) = 0 Then currency2 = "Dollars"
If Len(subCurrency) = 0 Then subCurrency = "Cents"
result = currency2 & " " & SpellNumber_English(dollars)
If cents > 0 Then
result = result & " and " & SpellNumber_English(cents) & " " & subCurrency
End If
NumberToWordsCustom = result & " Only"
End Function
Private Function SpellNumber_English(ByVal MyNumber As Long) As String
Dim Units As Variant, Tens As Variant, Teens As Variant
Dim Place() As String
Dim TempStr As String
Dim Count As Integer
Dim t As String
Dim StrNumber As String
Dim n As Integer
Place = Split(" Thousand Million Billion", " ")
Units = Array("", "One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine")
Tens = Array("", "", "Twenty", "Thirty", "Forty", "Fifty", "Sixty", "Seventy", "Eighty", "Ninety")
Teens = Array("Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eighteen", "Nineteen")
StrNumber = Trim(Str(MyNumber))
Count = 0
Do While StrNumber <> ""
n = Val(Right(StrNumber, 3))
If n <> 0 Then
t = ConvertHundreds(n, Units, Tens, Teens)
If Count > 0 Then t = t & " " & Place(Count - 1)
TempStr = t & " " & TempStr
End If
If Len(StrNumber) > 3 Then
StrNumber = Left(StrNumber, Len(StrNumber) - 3)
Else
StrNumber = ""
End If
Count = Count + 1
Loop
SpellNumber_English = Trim(TempStr)
End Function
Private Function ConvertHundreds(ByVal n As Integer, Units As Variant, Tens As Variant, Teens As Variant) As String
Dim result As String
If n >= 100 Then
result = Units(Int(n / 100)) & " Hundred "
n = n Mod 100
End If
If n >= 20 Then
result = result & Tens(Int(n / 10)) & " "
n = n Mod 10
ElseIf n >= 10 Then
result = result & Teens(n - 10) & " "
n = 0
End If
If n > 0 Then
result = result & Units(n)
End If
ConvertHundreds = Trim(result)
End Function
예제 VBA 수식:

다른 통화 예제 VBA 수식:
=NumberToWordsCustom(A2, "Euros", "Cents")
=NumberToWordsCustom(A2, "Pounds", "Pence")
코드는 유연합니다. 원하는 통화와 부속 단위를 입력하기만 하면 됩니다.
매크로가 활성화된 파일로 통합 문서 저장하기
VBA를 사용 중이라면, 작업 내용을 잃지 않으려면 반드시 매크로가 활성화된 상태로 통합 문서를 저장해야 합니다. 그렇지 않으면 파일을 닫았을 때 코드가 손실됩니다.
1단계. 파일 > 다른 이름으로 저장으로 이동합니다.

2단계. 위치를 선택하고 파일 형식을 선택합니다: Excel 매크로 사용 가능 통합 문서 (*.xlsm).

3단계. 저장을 클릭합니다.
✅ =ConvertToRupees(A2)와 같은 사용자 정의 함수는 이제 유지되며 언제든지 재사용할 수 있습니다.
LAMBDA 함수를 사용하여 인도 루피로 숫자를 단어로 변환하기 (Microsoft 365 전용)
엑셀 365 사용자는 LAMBDA라는 새로운 엑셀 기능을 사용하여 사용자 정의 수식을 정의할 수 있으며, VBA가 필요 없습니다.
🪄 LAMBDA란 무엇인가요?
LAMBDA는 SUM이나 IF와 같은 내장 함수처럼, 코드나 매크로 없이 수식을 사용하여 자신의 사용자 정의 함수를 만들 수 있게 해주는 엑셀의 기능입니다. 이 기능은 반복적인 논리를 단순화하고 스프레드시트를 깔끔하고 유지 관리하기 쉽게 만듭니다.
1단계: 이름 관리자로 이동하여 수식 > 이름 관리자를 클릭합니다.

2단계: 새 이름을 생성합니다.
새로 만들기 버튼을 클릭합니다.
이름을 입력합니다.
예: RupeeToWords
3단계: 참조 대상 필드에 이 LAMBDA 수식을 붙여넣습니다:
=LAMBDA(n, LET( units, {"","One","Two","Three","Four","Five","Six","Seven","Eight","Nine"}, teens, {"Ten","Eleven","Twelve","Thirteen","Fourteen","Fifteen","Sixteen","Seventeen","Eighteen","Nineteen"}, tens, {"","","Twenty","Thirty","Forty","Fifty","Sixty","Seventy","Eighty","Ninety"}, num, INT(n), paise, ROUND((n - INT(n)) * 100, 0), ConvertTwo, LAMBDA(x, IF(x<10, INDEX(units, x+1), IF(x<20, INDEX(teens, x-9), INDEX(tens, INT(x/10)+1) & IF(MOD(x,10)>0, " " & INDEX(units, MOD(x,10)+1), "") ) ) ), ConvertThree, LAMBDA(x, IF(x=0, "", IF(x<100, ConvertTwo(x), INDEX(units, INT(x/100)+1) & " Hundred" & IF(MOD(x,100)>0, " " & ConvertTwo(MOD(x,100)), "") ) ) ), words, IF(num=0, "Zero", TEXTJOIN(" ", TRUE, IF(INT(num/10000000)>0, ConvertTwo(INT(num/10000000)) & " Crore", ""), IF(MOD(INT(num/100000),100)>0, ConvertTwo(INT(MOD(num,10000000)/100000)) & " Lakh", ""), IF(MOD(INT(num/1000),100)>0, ConvertTwo(INT(MOD(num,100000)/1000)) & " Thousand", ""), IF(MOD(INT(num/100),10)>0, INDEX(units, INT(MOD(num,1000)/100)+1) & " Hundred", ""), IF(MOD(num,100)>0, ConvertTwo(MOD(num,100)), "") ) ), result, "Rupees " & words & IF(paise>0, " and " & ConvertTwo(paise) & " Paise", "") & " Only", result ))확인을 클릭하여 새 이름을 저장합니다.

3단계. 이름 관리자를 닫고 엑셀로 돌아갑니다.
4단계. 다음과 같이 아무 셀에서 수식을 사용합니다:
Enter 키를 누릅니다.

👀 전체 LAMBDA 함수 코드는 크로어, 락, 천, 소수까지 처리합니다.
USD, EUR 및 30개 이상의 다른 통화로 숫자를 단어로 변환하기 (모든 Microsoft 버전)
가장 효율적이고 전문적인 솔루션을 위해 Kutools for Excel의 Numbers to Words를 사용하세요. 이 강력한 도구는 다음을 지원합니다:
🌍 30개 이상의 통화, 포함:
- 미국 달러 (USD)
- 유로 (EUR)
- 중국 위안 (CNY)
- 영국 파운드 (GBP)
- 등등.
1단계. 변환하려는 셀을 선택합니다.

2단계. Kutools > 텍스트 > Numbers to Words로 이동합니다.

3단계. 목표 통화를 선택하고 확인을 클릭합니다.

숫자는 지정된 통화로 변환됩니다.

😁 팁: 숫자를 직접 단어로 변환하려면 통화로 변환하지 않음 옵션을 선택하면 결과는 다음과 같이 표시됩니다:

각 방법을 언제 사용할 것인가
프로그래밍 가능한 유연한 솔루션이 필요하고 매크로에 익숙하다면 VBA를 사용하세요.
- 엑셀 365를 사용하고 인도 루피 값을 가끔씩 변환해야 하는 경우 LAMBDA를 사용하세요. 이는 매크로나 외부 도구가 필요 없는 가벼운 공유 가능한 솔루션으로, 단순하거나 개인적인 작업에 적합합니다.
- 가장 쉽고 빠르며 다재다능한 솔루션을 원하고 코딩이 필요 없다면 Kutools for Excel을 사용하세요. 특히 다음 상황에서 유용합니다:
- 여러 통화를 다룰 때
- 대량 또는 대규모 데이터셋의 값을 변환해야 할 때
- 30개 이상의 통화 옵션과 AI 기반 성능을 갖춘 매크로 없는 전문적인 도구를 원할 때
최고의 오피스 생산성 도구
🤖 | Kutools AI 도우미: 데이터 분석에 혁신을 가져옵니다. 방법: 지능형 실행 | 코드 생성 | 사용자 정의 수식 생성 | 데이터 분석 및 차트 생성 | Kutools Functions 호출… |
인기 기능: 중복 찾기, 강조 또는 중복 표시 | 빈 행 삭제 | 데이터 손실 없이 열 또는 셀 병합 | 반올림(수식 없이) ... | |
슈퍼 LOOKUP: 다중 조건 VLOOKUP | 다중 값 VLOOKUP | 다중 시트 조회 | 퍼지 매치 .... | |
고급 드롭다운 목록: 드롭다운 목록 빠르게 생성 | 종속 드롭다운 목록 | 다중 선택 드롭다운 목록 .... | |
열 관리자: 지정한 수의 열 추가 | 열 이동 | 숨겨진 열의 표시 상태 전환 | 범위 및 열 비교 ... | |
추천 기능: 그리드 포커스 | 디자인 보기 | 향상된 수식 표시줄 | 통합 문서 & 시트 관리자 | 자동 텍스트 라이브러리 | 날짜 선택기 | 데이터 병합 | 셀 암호화/해독 | 목록으로 이메일 보내기 | 슈퍼 필터 | 특수 필터(굵게/이탤릭/취소선 필터 등) ... | |
15대 주요 도구 세트: 12 가지 텍스트 도구(텍스트 추가, 특정 문자 삭제, ...) | 50+ 종류의 차트(간트 차트, ...) | 40+ 실용적 수식(생일을 기반으로 나이 계산, ...) | 19 가지 삽입 도구(QR 코드 삽입, 경로에서 그림 삽입, ...) | 12 가지 변환 도구(단어로 변환하기, 통화 변환, ...) | 7 가지 병합 & 분할 도구(고급 행 병합, 셀 분할, ...) | ... 등 다양 |
Kutools for Excel과 함께 엑셀 능력을 한 단계 끌어 올리고, 이전에 없던 효율성을 경험하세요. Kutools for Excel은300개 이상의 고급 기능으로 생산성을 높이고 저장 시간을 단축합니다. 가장 필요한 기능을 바로 확인하려면 여기를 클릭하세요...
Office Tab은 Office에 탭 인터페이스를 제공하여 작업을 더욱 간편하게 만듭니다
- Word, Excel, PowerPoint에서 탭 편집 및 읽기를 활성화합니다.
- 새 창 대신 같은 창의 새로운 탭에서 여러 파일을 열고 생성할 수 있습니다.
- 생산성이50% 증가하며, 매일 수백 번의 마우스 클릭을 줄여줍니다!
모든 Kutools 추가 기능. 한 번에 설치
Kutools for Office 제품군은 Excel, Word, Outlook, PowerPoint용 추가 기능과 Office Tab Pro를 한 번에 제공하여 Office 앱을 활용하는 팀에 최적입니다.





- 올인원 제품군 — Excel, Word, Outlook, PowerPoint 추가 기능 + Office Tab Pro
- 설치 한 번, 라이선스 한 번 — 몇 분 만에 손쉽게 설정(MSI 지원)
- 함께 사용할 때 더욱 효율적 — Office 앱 간 생산성 향상
- 30일 모든 기능 사용 가능 — 회원가입/카드 불필요
- 최고의 가성비 — 개별 추가 기능 구매 대비 절약