Cómo convertir números a 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 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.

Leave a Reply

Your email address will not be published. Required fields are marked *

Terms and Conditions of use

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.