
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 lo he explicado un poco, para que pueda realizar cambios según sus requisitos.
Función de Excel para convertir números a palabras en rupias indias
Por lo tanto, use 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_PALABRA. La sintaxis de esta función es:
| = NUM_TO_IND_RUPEE_PALABRA (número) Puede descargar el archivo de macro de trabajo: |
Número de palabras 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_PALABRA. Y otras tres funciones GetHunderds (), GetTens () y GetDigits son funciones de ayuda que ayudan a la función principal a formar la cadena.
Función NUM_TO_IND_RUPEE_PALABRA (ByVal MINUMERO, Opcional incRupees As Boolean = True)
Dim Crores, Lakhs, Rupias, Paise, Temp
Dim DecimalPlace tan largo, cuenta como largo
Dim myLakhs, myCrores
ReDim Place (9) como cadena
Lugar (2) = "Mil": Lugar (3) = "Millón"
Lugar (4) = "Mil millones": Lugar (5) = "Trillón"
'Representación en cadena del importe.
MINUMERO = Recortar (Str (MINUMERO))
'Posición del decimal 0 si no hay ninguno.
DecimalPlace = InStr (MINUMERO, ".")
'Convertir Paise y establecer MINUMERO a la cantidad de rupias.
Si DecimalPlace> 0 entonces
Paise = GetTens (Left (Mid (MINUMERO, DecimalPlace + 1) & "00", 2))
MINUMEROr = Trim (Izquierda (MINUMERO, DecimalPlace - 1))
Terminara si
myCrores = MINUMERO \ 10000000
myLakhs = (MINUMERO - myCrores * 10000000) \ 100000
MINUMERO = MINUMERO - myCrores * 10000000 - myLakhs * 100000
Cuenta = 1
Hacer mientras myCrores <> ""
Temp = GetHundreds (Derecha (myCrores, 3))
Si Temp <> "" Entonces Crores = Temp & Place (Count) & Crores
Si Len (myCrores)> 3 Entonces
myCrores = Izquierda (myCrores, Len (myCrores) - 3)
Más
myCrores = ""
Terminara si
Cuenta = Cuenta + 1
Lazo
Cuenta = 1
Hacer mientras myLakhs <> ""
Temp = GetHundreds (Derecha (myLakhs, 3))
Si Temp <> "" Entonces Lakhs = Temp & Place (Count) & Lakhs
Si Len (myLakhs)> 3 Entonces
myLakhs = Izquierda (myLakhs, Len (myLakhs) - 3)
Más
myLakhs = ""
Terminara si
Cuenta = Cuenta + 1
Lazo
Cuenta = 1
Hacer mientras MINUMERO <> ""
Temp = GetHundreds (Derecha (MINUMERO, 3))
Si Temp <> "" Entonces Rupias = Temp & Place (Count) & Rupias
Si Len (MyNumber)> 3, entonces
MINUMERO = Left (MINUMERO, Len (MINUMERO) - 3)
Más
MyNumber = ""
Terminara si
Cuenta = Cuenta + 1
Lazo
Seleccione Caso Crores
Caso "": Crores = ""
Caso "Uno": Crores = "One Crore"
Caso contrario: Crores = Crores y "Crores"
Finalizar Seleccionar
Seleccionar caso Lakhs
Caso "": Lakhs = ""
Caso "Uno": Lakhs = "One Lakh"
Caso contrario: Lakhs = Lakhs y "Lakhs"
Finalizar Seleccionar
Seleccionar caso rupias
Caso "": rupias = "cero"
Caso "Uno": rupias = "Uno"
Caso demás:
Rupias = Rupias
Finalizar Seleccionar
Seleccione Case Paise
Caso "": Paise = "y Paise Zero solamente"
Caso "Uno": Paise = "y Paise One solamente"
Caso contrario: Paise = "and Paise" & Paise & "Only"
Finalizar Seleccionar
'creando la cadena de palabras para traducir el número en palabras
NUM_TO_IND_RUPEE_WORD = IIf (incRupees, "Rupees", "") & Crores & _ Lakhs & Rupees & Paise
Función final
'Convierte un número de 100 a 999 en texto
Función GetHundreds (ByVal MINUMERO)
Atenuar resultado como cadena
Si Val (MINUMERO) = 0, salga de la función
MINUMERO = Derecha ("000" y MINUMERO, 3)
'Convierte el lugar de las centenas.
Si Mid (MINUMERO, 1, 1) <> "0" Entonces
Resultado = GetDigit (Mid (MINUMERO, 1, 1)) & "Hundred"
Terminara si
'Convierta el lugar de las decenas y las unidades.
Si Mid (MINUMERO 2, 1) <> "0" Entonces
Result = Result & GetTens (Mid (MINUMERO 2))
Más
Resultado = Resultado y GetDigit (Mid (MINUMERO, 3))
Terminara si
GetHundreds = Resultado
Función final
'Convierte un número del 10 al 99 en texto.
Función GetTens (TensText)
Atenuar resultado como cadena
Result = "" 'Anula el valor de la función temporal.
If Val (Left (TensText, 1)) = 1 Then 'If valor entre 10-19 ...
Seleccione Case Val (TensText)
Caso 10: Resultado = "Diez"
Caso 11: Resultado = "Once"
Caso 12: Resultado = "Doce"
Caso 13: Resultado = "Trece"
Caso 14: Resultado = "Catorce"
Caso 15: Resultado = "Quince"
Caso 16: Resultado = "Dieciséis"
Caso 17: Resultado = "Diecisiete"
Caso 18: Resultado = "Dieciocho"
Caso 19: Resultado = "Diecinueve"
Caso otro
Finalizar Seleccionar
Else 'Si valor entre 20-99 ...
Seleccione Case Val (Izquierda (TensText, 1))
Caso 2: Resultado = "Veinte"
Caso 3: Resultado = "Treinta"
Caso 4: Resultado = "Cuarenta"
Caso 5: Resultado = "Cincuenta"
Caso 6: Resultado = "Sesenta"
Caso 7: Resultado = "Setenta"
Caso 8: Resultado = "Ochenta"
Caso 9: Resultado = "Noventa"
Caso otro
Finalizar Seleccionar
Resultado = Resultado y GetDigit _
(Derecha (TensText, 1)) 'Recuperar el lugar de los unos.
Terminara si
GetTen
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.
The applications/code on this site are distributed as is and without warranties or liability. In no event shall the owner of the copyrights, or the authors of the applications/code be liable for any loss of profit, any problems or any damage resulting from the use or evaluation of the applications/code.