Cómo convertir número de palabras en Excel en rupias
Excel no proporciona ninguna función predeterminada que convierta un número o una cantidad en palabras en rupias indias o en cualquier moneda. Pero eso no significa que no podamos convertir el número a rupia india. Podemos crear una fórmula de Excel personalizada para convertir números en palabras en rupias indias. He creado esta función personalizada para convertir números en palabras en términos de rupias indias. Puede descargar el archivo de macro a continuación. He mencionado el código a continuación y explicado un poco, para que pueda realizar cambios según sus requisitos.
Función de Excel para convertir un número en palabras en rupias indias. Utilice esta función para convertir cualquier cantidad o número de 10 dígitos o menos en palabras o rupias. He nombrado esta función NUM_TO_IND_RUPEE_WORD. La sintaxis de esta función es:
=NUM_TO_IND_RUPEE_WORD(number) |
Puede descargar el archivo de macro de trabajo hacia abajo:
`enlace: /wp-content-uploads-2020-03-Number-to-Words-indian-rupee.xls [Número de palabras en rupia india]
Ahora el código de la función se menciona a continuación.
Este código se divide en cuatro funciones individuales. La función principal es NUM_TO_IND_RUPEE_WORD. Y otras tres funciones GetHunderds (), GetTens () y GetDigits son funciones de ayuda que ayudan a la función principal a formar la cadena.
Function NUM_TO_IND_RUPEE_WORD(ByVal MyNumber, Optional incRupees As Boolean = True) Dim Crores, Lakhs, Rupees, Paise, Temp Dim DecimalPlace As Long, Count As Long Dim myLakhs, myCrores 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 Paise and set MyNumber to Rupees amount. If DecimalPlace > 0 Then Paise = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & "00", 2)) MyNumber = Trim(Left(MyNumber, DecimalPlace - 1)) End If myCrores = MyNumber \ 10000000 myLakhs = (MyNumber - myCrores * 10000000) \ 100000 MyNumber = MyNumber - myCrores 10000000 - myLakhs 100000 Count = 1 Do While myCrores <> "" Temp = GetHundreds(Right(myCrores, 3)) If Temp <> "" Then Crores = Temp & Place(Count) & Crores If Len(myCrores) > 3 Then myCrores = Left(myCrores, Len(myCrores) - 3) Else myCrores = "" End If Count = Count + 1 Loop Count = 1 Do While myLakhs <> "" Temp = GetHundreds(Right(myLakhs, 3)) If Temp <> "" Then Lakhs = Temp & Place(Count) & Lakhs If Len(myLakhs) > 3 Then myLakhs = Left(myLakhs, Len(myLakhs) - 3) Else myLakhs = "" End If Count = Count + 1 Loop Count = 1 Do While MyNumber <> "" Temp = GetHundreds(Right(MyNumber, 3)) If Temp <> "" Then Rupees = Temp & Place(Count) & Rupees If Len(MyNumber) > 3 Then MyNumber = Left(MyNumber, Len(MyNumber) - 3) Else MyNumber = "" End If Count = Count + 1 Loop Select Case Crores Case "": Crores = "" Case "One": Crores = " One Crore " Case Else: Crores = Crores & " Crores " End Select Select Case Lakhs Case "": Lakhs = "" Case "One": Lakhs = " One Lakh " Case Else: Lakhs = Lakhs & " Lakhs " End Select Select Case Rupees Case "": Rupees = "Zero " Case "One": Rupees = "One " Case Else: Rupees = Rupees End Select Select Case Paise Case "": Paise = " and Paise Zero Only " Case "One": Paise = " and Paise One Only " Case Else: Paise = " and Paise " & Paise & " Only " End Select 'creating the string of words to translate number into words NUM_TO_IND_RUPEE_WORD = IIf(incRupees, "Rupees ", "") & Crores & _ Lakhs & Rupees & Paise 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
El código de la función es largo pero fácil de entender.
Para usar este código, inserte un módulo en VBE y cópielo y péguelo. Y la función está lista para usarse directamente en la hoja. Convertirá el número en palabras, específicamente en formato de rupias indias.
Así que sí, chicos, así es como pueden usar una función personalizada en Excel para convertir números en palabras. Espero que esto sea útil. Si tiene alguna duda sobre este artículo o cualquier otra función, pregunte en la sección de comentarios a continuación.
Artículos relacionados:
link: / excel-array-formulas-arrays-in-excel-formula [Matrices en fórmula de Excel]
* | Las matrices son una colección de valores del mismo tipo en todos los lenguajes técnicos. En Excel es igual pero se trata de forma ligeramente diferente a otros lenguajes de programación ..
link: / vba-user-defined-function [Cómo crear una función definida por el usuario a través de VBA]
* | Aprenda a crear funciones definidas por el usuario en Excel.
link: / custom-functions-userdefined-functions-from-other-workbooks-using-vba-in-microsoft-excel [Usando una función definida por el usuario (UDF) de otro libro usando VBA en Microsoft Excel]
* | Utilice la función definida por el usuario en otro libro de Excel.
link: / custom-functions-return-error-values-from-user-defined-functions-using-vba-in-microsoft-excel [Devolver valores de error de funciones definidas por el usuario usando VBA en Microsoft Excel]
* | Descubra cómo puede devolver valores de error desde una función definida por el usuario.
Artículos populares:
link: / keyboard-formula-shortcuts-50-excel-shortcuts-to-incrementa-your-productividad [50 accesos directos de Excel para aumentar su productividad]
| Acelera tu tarea. Estos 50 atajos le permitirán trabajar aún más rápido en Excel.
enlace: / fórmulas-y-funciones-introducción-de-función-vlookup [Cómo utilizar la función BUSCARV de Excel]
| Esta es una de las funciones más utilizadas y populares de Excel que se utiliza para buscar valores de diferentes rangos y hojas.
link: / tips-countif-in-microsoft-excel [Cómo usar]
enlace: / fórmulas-y-funciones-introducción-de-vlookup-function [Excel]
enlace: / tips-countif-in-microsoft-excel [Función COUNTIF]
| Cuente valores con condiciones usando esta asombrosa función.
No necesita filtrar sus datos para contar un valor específico. La función Countif es esencial para preparar su tablero.
link: / excel-formula-and-function-excel-sumif-function [Cómo usar la función SUMIF en Excel]
| Esta es otra función esencial del tablero. Esto le ayuda a resumir valores en condiciones específicas.