Cómo convertir números a palabras en Excel en rupias

Tabla de contenido:

Anonim

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 números a rupias indias. 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. Mencioné el código a continuación y lo expliqué 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_WORD. La sintaxis de esta función es:

= NUM_TO_IND_RUPEE_WORD (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_WORD. 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_WORD (ByVal MyNumber, Opcional 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) = "Mil" : Lugar (3) = "Millón" Lugar (4) = "Mil millones": Lugar (5) = "Trillón" 'Representación en cadena de la cantidad. MyNumber = Trim (Str (MyNumber)) 'Posición del decimal 0 si no hay ninguno. DecimalPlace = InStr (MyNumber, ".") 'Convertir Paise y establecer MyNumber en la cantidad de rupias. 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 Si Len (myCrores)> 3 Entonces myCrores = Izquierda (myCrores, Len (myCrores) - 3) Else myCrores = "" Fin si 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 = C ount + 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 "Uno": Lakhs = "One Lakh" Caso Else: Lakhs = Lakhs & "Lakhs" Fin Seleccione Seleccione Caso Rupias Caso "": Rupias = "Cero" Caso "Uno": Rupias = "Uno" Caso Else: Rupias = Rupias End Select Case Paise Case "": Paise = "y Paise Zero Only" Case "One": Paise = "y Paise One Only" Case Else: Paise = "y Paise" & Paise & "Only" End Select 'creando el cadena de palabras para traducir el número en palabras NUM_TO_IND_RUPEE_WORD = IIf (incRupees, "Rupees", "") & Crores & _ Lakhs & Rupees & Paise End Function 'Convierte un número de 100-999 en texto Función GetHundreds (ByVal MyNumber) Dim Result Como cadena Si Val (MyNumber) = 0 Then Exit Function MyNumber = Right ("000" & MyNumber, 3) 'Convierta el lugar de las centenas. If Mid (MyNumber, 1, 1) "0" Then Result = GetDigit (Mid (MyNumber, 1, 1)) & "Hundred" End If 'Convierte el lugar de las decenas y las unidades. 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 'Convierte un número del 10 al 99 en texto. Función GetTens (TensText) Dim Result As String Result = "" 'Anula el valor temporal de la función. If Val (Left (TensText, 1)) = 1 Then 'If value between 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 Else End Seleccione Else 'Si el valor está entre 20-99… Seleccione Caso 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 Más Fin Seleccionar Resultado = Result & GetDigit _ (Right (TensText, 1)) 'Recuperar el lugar de las unidades. End If GetTens = Result End Function 'Convierte un número del 1 al 9 en texto. Función GetDigit (Digit) Seleccione Case Val (Digit) Caso 1: GetDigit = "Uno" Caso 2: GetDigit = "Dos" Caso 3: GetDigit = "Tres" Caso 4: GetDigit = "Cuatro" Caso 5: GetDigit = "Cinco "Caso 6: GetDigit =" Seis "Caso 7: GetDigit =" Siete "Caso 8: GetDigit =" Ocho "Caso 9: GetDigit =" Nueve "Caso de lo contrario: GetDigit =" "Fin Seleccionar función de fin 

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 con respecto a este artículo o cualquier otra función, pregunte en la sección de comentarios a continuación.

Crear función VBA para devolver matriz| Para devolver una matriz usando una función personalizada en Excel, usamos una sintaxis ligeramente diferente para escribir la función personalizada. Esta función devuelve una matriz de valores en lugar de solo un valor.

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 …

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.

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.

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.

Articulos populares:

50 accesos directos de Excel para aumentar su productividad | Acelera tu tarea. Estos 50 accesos directos le permitirán trabajar aún más rápido en Excel.

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.

Cómo usar 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.

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.