Note: The other languages of the website are Google-translated. Back to English

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

En este artículo, presentaré cómo convertir una lista de números en palabras en rupias indias o dólares ingleses en Excel.

Convierta números a palabras en rupias indias con código VBA

Convierta números en palabras en dólares ingleses con una característica sorprendente


Convierta números a palabras en rupias indias con código VBA

El siguiente código VBA puede ayudarlo a convertir los números a palabras en rupias, haga lo siguiente:

1. Mantenga pulsado el ALT + F11 teclas para abrir el Microsoft Visual Basic para aplicaciones ventana.

2. Hacer clic recuadro > Móduloy pegue el siguiente código en la ventana del módulo.

Código VBA: convierte números en palabras en rupias

Public Function RupeeFormat(SNum As String)
'Updateby Extendoffice
Dim xDPInt As Integer
Dim xArrPlace As Variant
Dim xRStr_Paisas As String
Dim xNumStr As String
Dim xF As Integer
Dim xTemp As String
Dim xStrTemp As String
Dim xRStr As String
Dim xLp As Integer
xArrPlace = Array("", "", " Thousand ", " Lacs ", " Crores ", " Trillion ", "", "", "", "")
On Error Resume Next
If SNum = "" Then
  RupeeFormat = ""
  Exit Function
End If
xNumStr = Trim(str(SNum))
If xNumStr = "" Then
  RupeeFormat = ""
  Exit Function
End If

xRStr = ""
xLp = 0
If (xNumStr > 999999999.99) Then
    RupeeFormat = "Digit excced Maximum limit"
    Exit Function
End If
xDPInt = InStr(xNumStr, ".")
If xDPInt > 0 Then
    If (Len(xNumStr) - xDPInt) = 1 Then
       xRStr_Paisas = RupeeFormat_GetT(Left(Mid(xNumStr, xDPInt + 1) & "0", 2))
    ElseIf (Len(xNumStr) - xDPInt) > 1 Then
       xRStr_Paisas = RupeeFormat_GetT(Left(Mid(xNumStr, xDPInt + 1), 2))
    End If
        xNumStr = Trim(Left(xNumStr, xDPInt - 1))
    End If
    xF = 1
    Do While xNumStr <> ""
        If (xF >= 2) Then
            xTemp = Right(xNumStr, 2)
        Else
            If (Len(xNumStr) = 2) Then
                xTemp = Right(xNumStr, 2)
            ElseIf (Len(xNumStr) = 1) Then
                xTemp = Right(xNumStr, 1)
            Else
                xTemp = Right(xNumStr, 3)
            End If
        End If
        xStrTemp = ""
        If Val(xTemp) > 99 Then
            xStrTemp = RupeeFormat_GetH(Right(xTemp, 3), xLp)
            If Right(Trim(xStrTemp), 3) <> "Lac" Then
            xLp = xLp + 1
            End If
        ElseIf Val(xTemp) <= 99 And Val(xTemp) > 9 Then
            xStrTemp = RupeeFormat_GetT(Right(xTemp, 2))
        ElseIf Val(xTemp) < 10 Then
            xStrTemp = RupeeFormat_GetD(Right(xTemp, 2))
        End If
        If xStrTemp <> "" Then
            xRStr = xStrTemp & xArrPlace(xF) & xRStr
        End If
        If xF = 2 Then
            If Len(xNumStr) = 1 Then
                xNumStr = ""
            Else
                xNumStr = Left(xNumStr, Len(xNumStr) - 2)
            End If
       ElseIf xF = 3 Then
            If Len(xNumStr) >= 3 Then
                 xNumStr = Left(xNumStr, Len(xNumStr) - 2)
            Else
                xNumStr = ""
            End If
        ElseIf xF = 4 Then
          xNumStr = ""
    Else
        If Len(xNumStr) <= 2 Then
        xNumStr = ""
    Else
        xNumStr = Left(xNumStr, Len(xNumStr) - 3)
        End If
    End If
        xF = xF + 1
Loop
    If xRStr = "" Then
       xRStr = "No Rupees"
    Else
       xRStr = " Rupees " & xRStr
    End If
    If xRStr_Paisas <> "" Then
       xRStr_Paisas = " and " & xRStr_Paisas & " Paisas"
    End If
    RupeeFormat = xRStr & xRStr_Paisas & " Only"
    End Function
Function RupeeFormat_GetH(xStrH As String, xLp As Integer)
Dim xRStr As String
If Val(xStrH) < 1 Then
    RupeeFormat_GetH = ""
    Exit Function
Else
   xStrH = Right("000" & xStrH, 3)
   If Mid(xStrH, 1, 1) <> "0" Then
        If (xLp > 0) Then
         xRStr = RupeeFormat_GetD(Mid(xStrH, 1, 1)) & " Lac "
        Else
         xRStr = RupeeFormat_GetD(Mid(xStrH, 1, 1)) & " Hundred "
        End If
    End If
    If Mid(xStrH, 2, 1) <> "0" Then
        xRStr = xRStr & RupeeFormat_GetT(Mid(xStrH, 2))
    Else
        xRStr = xRStr & RupeeFormat_GetD(Mid(xStrH, 3))
    End If
End If
    RupeeFormat_GetH = xRStr
End Function
Function RupeeFormat_GetT(xTStr As String)
    Dim xTArr1 As Variant
    Dim xTArr2 As Variant
    Dim xRStr As String
    xTArr1 = Array("Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eighteen", "Nineteen")
    xTArr2 = Array("", "Twenty", "Thirty", "Forty", "Fifty", "Sixty", "Seventy", "Eighty", "Ninety")
    Result = ""
    If Val(Left(xTStr, 1)) = 1 Then
        xRStr = xTArr1(Val(Mid(xTStr, 2, 1)))
    Else
        If Val(Left(xTStr, 1)) > 0 Then
            xRStr = xTArr2(Val(Left(xTStr, 1)) - 1)
        End If
        xRStr = xRStr & RupeeFormat_GetD(Right(xTStr, 1))
    End If
      RupeeFormat_GetT = xRStr
End Function
Function RupeeFormat_GetD(xDStr As String)
Dim xArr_1() As Variant
    xArr_1 = Array(" One", " Two", " Three", " Four", " Five", " Six", " Seven", " Eight", " Nine", "")
    If Val(xDStr) > 0 Then
        RupeeFormat_GetD = xArr_1(Val(xDStr) - 1)
    Else
        RupeeFormat_GetD = ""
    End If
End Function 

3. Después de insertar el código, guarde y cierre la ventana del código, vuelva a la hoja de trabajo e ingrese esta fórmula: = Formato de rupia (A2) en una celda en blanco, y luego arrastre el controlador de relleno hacia abajo para aplicar esta fórmula a otras celdas, todos los números se han escrito en rupias, vea la captura de pantalla:


Convierta números en palabras en dólares ingleses con una característica sorprendente

Si desea convertir los números a palabras en dólares ingleses, Kutools for Excel, Números a palabras La función puede ayudarlo a resolver este trabajo rápida y fácilmente.

Consejos:Para aplicar esto Número a palabras función, en primer lugar, debe descargar la Kutools for Excely, a continuación, aplique la función de forma rápida y sencilla.

Después de instalar Kutools for Excel, haz lo siguiente:

1. Seleccione la lista de números que desea convertir y luego haga clic en Kutools > Contenido > Números a palabras, ver capturas de pantalla:

2. En la Números a palabras de moneda cuadro de diálogo, seleccione Inglés Opción de la Idiomas sección y luego haga clic en Ok botón, los números en la selección se han convertido a las palabras de moneda en inglés, vea la captura de pantalla:

¡Haga clic para descargar Kutools para Excel y prueba gratuita ahora!

 


  • Barra de súper fórmula (edite fácilmente varias líneas de texto y fórmulas); Diseño de lectura (leer y editar fácilmente un gran número de celdas); Pegar en rango filtrado...
  • Combinar celdas / filas / columnas y conservación de datos; Contenido de celdas divididas; Combinar filas duplicadas y suma / promedio... Prevenir celdas duplicadas; Comparar rangos...
  • Seleccione Duplicado o Único Filas; Seleccionar filas en blanco (todas las celdas están vacías); Super Find y Fuzzy Find en muchos libros de trabajo; Selección aleatoria ...
  • Copia exacta Varias celdas sin cambiar la referencia de la fórmula; Crear referencias automáticamente a varias hojas; Insertar viñetas, Casillas de verificación y más ...
  • Fórmulas favoritas e insertar rápidamente, Rangos, gráficos e imágenes; Cifrar celdas con contraseña; Crear lista de distribución y enviar correos electrónicos ...
  • Extraer texto, Agregar texto, Eliminar por posición, Quitar espacio; Crear e imprimir subtotales de paginación; Convertir entre contenido de celdas y comentarios...
  • Súper filtro (guardar y aplicar esquemas de filtros a otras hojas); Orden avanzado por mes / semana / día, frecuencia y más; Filtro especial en negrita, cursiva ...
  • Combinar libros y hojas de trabajo; Combinar tablas basadas en columnas clave; Dividir datos en varias hojas; Conversión por lotes de xls, xlsx y PDF...
  • Agrupación de tablas dinámicas por número de semana, día de la semana y más ... Mostrar celdas bloqueadas y desbloqueadas por diferentes colores; Resalte las celdas que tienen fórmula / nombre...
pestaña kte 201905
  • Habilite la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
  • ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!
officetab parte inferior

 

Comentarios (22)
Aún no hay calificaciones. ¡Sé el primero en calificar!
Este comentario fue minimizado por el moderador en el sitio
¡Excel falla cuando la celda de referencia no tiene válvula!
Este comentario fue minimizado por el moderador en el sitio
Hola, usuario,
Gracias por tu comentario, el código de este artículo ha sido actualizado, inténtalo de nuevo, ¡gracias!
Este comentario fue minimizado por el moderador en el sitio
Estimado señor,

Buenos días,

Probé la fórmula anterior, no funciona en valores de guión menos como -100 -10,000 o (100) (10,000)

Señor, estoy usando el siguiente código durante los últimos 1 años y hoy descubrí el mismo error.

Cuando escribo menos -10,000 o (10,000) muestra "Solo ciento diez mil"
Cuando escribo Positive 10,000 funciona muy bien "Only Ten Thousand"

Debajo del ejemplo:

(10,000.99) Solo ciento diez mil y 99/100 riales
10,000.99 Solo diez mil y 99/100 riales
(10,000,000.99) Solo ciento diez millones y 99/100 riales
10,000,000.99 Solo diez millones y 99/100 riales
(10,000,000,000.99) Solo ciento diez mil millones y 99/100 riales
10,000,000,000.99 Solo diez mil millones y 99/100 riales
(10,000,000,000,000.90) Solo ciento diez billones y 90/100 riales
10,000,000,000,000.90 Solo diez billones y 90/100 riales

Fórmula = ortografía

MI CÓDIGO VBA:

'Función principal
Función SpellBilling(ByVal MyNumber)
Dim Riyals, Halalas, Temp
Dim DecimalPlace, Count
ReDim Place(9) como cadena
Lugar(2) = " Mil "
Lugar(3) = " Millón "
Lugar(4) = " Mil millones "
Lugar(5) = " Billón "
' Cadena de representación de la cantidad.
MiNúmero = Trim(Str(MiNúmero))
' Posición del lugar decimal 0 si ninguno.
LugarDecimal = InStr(MiNúmero, ".")
' Convierta Halalas y establezca MyNumber en la cantidad de Riyal.
Si LugarDecimal > 0 Entonces
Halalas = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & _
"00", 2))
MiNúmero = Trim(Izquierda(MiNúmero, Lugar Decimal - 1))
Si terminar
Count = 1
Hacer Mientras MiNúmero <> ""
Temp = ObtenerCientos(Derecha(MiNúmero, 3))
Si Temp <> "" Entonces Riyals = Temp & Place (Count) & Riyals
Si Len(MiNúmero) > 3 Entonces
MiNúmero = Izquierda(MiNúmero, Len(MiNúmero) - 3)
otro
MiNumero = ""
Si terminar
Count = Count + 1
Red ISTE Loop
Seleccione Case Riyals
Caso ""
Riyales = "Sin Riyal"
Caso "Uno"
Riyals = "Solo un Riyal"
Caso Else
Riyales = "Solo" & Riyales
Riyales = Riyales & ""
Fin Seleccionar
Seleccionar caso Halalas
Caso ""
Halalas = "& 00/00 riales"
Caso "Uno"
Halalas = "& 01/100 riales"
Caso "Dos"
Halalas = "& 02/100 riales"
Caso "Tres"
Halalas = "& 03/100 riales"
Caso "Cuatro"
Halalas = "& 04/100 riales"
Caso "Cinco"
Halalas = "& 05/100 riales"
Caso "Seis"
Halalas = "& 06/100 riales"
Caso "Siete"
Halalas = "& 07/100 riales"
Caso "Ocho"
Halalas = "& 08/100 riales"
Caso "Nueve"
Halalas = "& 09/100 riales"
Caso "Diez"
Halalas = "& 10/100 riales"
Caso "Once"
Halalas = "& 11/100 riales"
Caso "Doce"
Halalas = "& 12/100 riales"
Caso "Trece"
Halalas = "& 13/100 riales"
Caso "Catorce"
Halalas = "& 14/100 riales"
Caso "Quince"
Halalas = "& 15/100 riales"
Caso "Dieciséis"
Halalas = "& 16/100 riales"
Caso "Diecisiete"
Halalas = "& 17/100 riales"
Caso "Dieciocho"
Halalas = "& 18/100 riales"
Caso "Diecinueve"
Halalas = "& 19/100 riales"
Caso "Veinte"
Halalas = "& 20/100 riales"
Caso "Veintiuno"
Halalas = "& 21/100 riales"
Caso "Veintidós"
Halalas = "& 22/100 riales"
Caso "Veintitrés"
Halalas = "& 23/100 riales"
Caso "Veinticuatro"
Halalas = "& 24/100 riales"
Caso "Veinticinco"
Halalas = "& 25/100 riales"
Caso "Veintiséis"
Halalas = "& 26/100 riales"
Caso "Veintisiete"
Halalas = "& 27/100 riales"
Caso "Veintiocho"
Halalas = "& 28/100 riales"
Caso "Veintinueve"
Halalas = "& 29/100 riales"
Caso "Treinta"
Halalas = "& 30/100 riales"
Caso "Treinta y Uno"
Halalas = "& 31/100 riales"
Caso "Treinta y dos"
Halalas = "& 32/100 riales"
Caso "Treinta y Tres"
Halalas = "& 33/100 riales"
Caso "Treinta y cuatro"
Halalas = "& 34/100 riales"
Caso "Treinta y cinco"
Halalas = "& 35/100 riales"
Caso "Treinta y seis"
Halalas = "& 36/100 riales"
Caso "Treinta y Siete"
Halalas = "& 37/100 riales"
Caso "Treinta y ocho"
Halalas = "& 38/100 riales"
Caso "Treinta y Nueve"
Halalas = "& 39/100 riales"
Caso "Cuarenta"
Halalas = "& 40/100 riales"
Caso "Cuarenta y Uno"
Halalas = "& 41/100 riales"
Caso "Cuarenta y dos"
Halalas = "& 42/100 riales"
Caso "Cuarenta y Tres"
Halalas = "& 43/100 riales"
Caso "Cuarenta y Cuatro"
Halalas = "& 44/100 riales"
Caso "Cuarenta y cinco"
Halalas = "& 45/100 riales"
Caso "Cuarenta y seis"
Halalas = "& 46/100 riales"
Caso "Cuarenta y Siete"
Halalas = "& 47/100 riales"
Caso "Cuarenta y ocho"
Halalas = "& 48/100 riales"
Caso "Cuarenta y Nueve"
Halalas = "& 49/100 riales"
Caso "Cincuenta"
Halalas = "& 50/100 riales"
Caso "Cincuenta y Uno"
Halalas = "& 51/100 riales"
Caso "Cincuenta y dos"
Halalas = "& 52/100 riales"
Caso "Cincuenta y tres"
Halalas = "& 53/100 riales"
Caso "Cincuenta y cuatro"
Halalas = "& 54/100 riales"
Caso "Cincuenta y cinco"
Halalas = "& 55/100 riales"
Caso "Cincuenta y seis"
Halalas = "& 56/100 riales"
Caso "Cincuenta y Siete"
Halalas = "& 57/100 riales"
Caso "Cincuenta y ocho"
Halalas = "& 58/100 riales"
Caso "Cincuenta y nueve"
Halalas = "& 59/100 riales"
Caso "Sesenta"
Halalas = "& 60/100 riales"
Caso "Sesenta y Uno"
Halalas = "& 61/100 riales"
Caso "Sesenta y Dos"
Halalas = "& 62/100 riales"
Caso "Sesenta y Tres"
Halalas = "& 63/100 riales"
Caso "Sesenta y Cuatro"
Halalas = "& 64/100 riales"
Caso "Sesenta y cinco"
Halalas = "& 65/100 riales"
Caso "Sesenta y seis"
Halalas = "& 66/100 riales"
Caso "Sesenta y Siete"
Halalas = "& 67/100 riales"
Caso "Sesenta y ocho"
Halalas = "& 68/100 riales"
Caso "Sesenta y Nueve"
Halalas = "& 69/100 riales"
Caso "Setenta"
Halalas = "& 70/100 riales"
Caso "Setenta y Uno"
Halalas = "& 71/100 riales"
Caso "Setenta y Dos"
Halalas = "& 72/100 riales"
Caso "Setenta y Tres"
Halalas = "& 73/100 riales"
Caso "Setenta y cuatro"
Halalas = "& 74/100 riales"
Caso "Setenta y cinco"
Halalas = "& 75/100 riales"
Caso "Setenta y Seis"
Halalas = "& 76/100 riales"
Caso "Setenta y Siete"
Halalas = "& 77/100 riales"
Caso "Setenta y Ocho"
Halalas = "& 78/100 riales"
Caso "Setenta y Nueve"
Halalas = "& 79/100 riales"
Caso "Ochenta"
Halalas = "& 80/100 riales"
Caso "Ochenta y Uno"
Halalas = "& 81/100 riales"
Caso "Ochenta y Dos"
Halalas = "& 82/100 riales"
Caso "Ochenta y Tres"
Halalas = "& 83/100 riales"
Caso "Ochenta y Cuatro"
Halalas = "& 84/100 riales"
Caso "Ochenta y Cinco"
Halalas = "& 85/100 riales"
Caso "Ochenta y Seis"
Halalas = "& 86/100 riales"
Caso "Ochenta y Siete"
Halalas = "& 87/100 riales"
Caso "Ochenta y Ocho"
Halalas = "& 88/100 riales"
Caso "Ochenta y Nueve"
Halalas = "& 89/100 riales"
Caso "Noventa"
Halalas = "& 90/100 riales"
Caso "Noventa y Uno"
Halalas = "& 91/100 riales"
Caso "Noventa y Dos"
Halalas = "& 92/100 riales"
Caso "Noventa y Tres"
Halalas = "& 93/100 riales"
Caso "Noventa y Cuatro"
Halalas = "& 94/100 riales"
Caso "Noventa y cinco"
Halalas = "& 95/100 riales"
Caso "Noventa y seis"
Halalas = "& 96/100 riales"
Caso "Noventa y Siete"
Halalas = "& 97/100 riales"
Caso "Noventa y ocho"
Halalas = "& 98/100 riales"
Caso "Noventa y Nueve"
Halalas = "& 99/100 riales"


Caso Else
Halalas = "&" & Halalas & "Halalas"
Fin Seleccionar
Facturación de hechizos = riales y halalas
Función finales


' Convierte un número del 100 al 999 en texto
Función ObtenerCientos(ByVal MiNúmero)
Resultado atenuado como cadena
Si Val (MyNumber) = 0, entonces salga de la función
MiNúmero = Derecha("000" & MiNúmero, 3)
' Convierte el lugar de las centenas.
Si Mid(MiNúmero, 1, 1) <> "0" Entonces
Resultado = GetDigit(Mid(MyNumber, 1, 1)) & " Cien "
Si terminar
' Convierte el lugar de las decenas y las unidades.
Si Mid(MiNúmero, 2, 1) <> "0" Entonces
Resultado = Resultado & GetTens(Mid(MyNumber, 2))
otro
Resultado = Resultado & GetDigit(Mid(MyNumber, 3))
Si terminar
GetHundreds = Resultado
Función finales

' Convierte un número del 10 al 99 en texto.
Función ObtenerDecenas(TextoDeDecenas)
Resultado atenuado como cadena
Result = "" ' Anula el valor de la función temporal.
If Val(Left(TensText, 1)) = 1 Then ' If value between 10-19...
Seleccionar valor de mayúsculas y minúsculas (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
Fin Seleccionar
Else ' Si el valor está entre 20 y 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 Else
Fin Seleccionar
Resultado = Resultado & GetDigit _
(Right(TensText, 1)) ' Recuperar el lugar de unos.
Si terminar
ObtenerDecenas = Resultado
Función finales

' Convierte un número del 1 al 9 en texto.
Función ObtenerDígito(Dígito)
Seleccionar valor de caso (dígito)
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 contrario: GetDigit = ""
Fin Seleccionar
Función finales
Este comentario fue minimizado por el moderador en el sitio
¡Nada que decir! Extremadamentesuper
Este comentario fue minimizado por el moderador en el sitio
Estimado señor,

Buenos días,
Probé su código VBA pero desafortunadamente no funciona bien en valores negativos/menos como -100 -10,000 / (100) (10,000).

Señor, estoy usando el código a continuación durante los últimos 1 años y hoy descubrí el mismo error que también se encuentra en su código VBA.

Cuando escribo menos -10,000 se muestra en "Only Hundred Ten Thousand"
Cuando escribo 10,000 positivos, se muestra en "Solo diez mil" funciona bien

Debajo del ejemplo:

(10,000.99) Solo ciento diez mil y 99/100 riales
10,000.99 Solo diez mil y 99/100 riales
(10,000,000.99) Solo ciento diez millones y 99/100 riales
10,000,000.99 Solo diez millones y 99/100 riales
(10,000,000,000.99) Solo ciento diez mil millones y 99/100 riales
10,000,000,000.99 Solo diez mil millones y 99/100 riales
(10,000,000,000,000.90) Solo ciento diez billones y 90/100 riales
10,000,000,000,000.90 Solo diez billones y 90/100 riales

Fórmula = ortografía

MI CÓDIGO VBA:

'Función principal
Función SpellBilling(ByVal MyNumber)
Dim Riyals, Halalas, Temp
Dim DecimalPlace, Count
ReDim Place(9) como cadena
Lugar(2) = " Mil "
Lugar(3) = " Millón "
Lugar(4) = " Mil millones "
Lugar(5) = " Billón "
' Cadena de representación de la cantidad.
MiNúmero = Trim(Str(MiNúmero))
' Posición del lugar decimal 0 si ninguno.
LugarDecimal = InStr(MiNúmero, ".")
' Convierta Halalas y establezca MyNumber en la cantidad de Riyal.
Si LugarDecimal > 0 Entonces
Halalas = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & _
"00", 2))
MiNúmero = Trim(Izquierda(MiNúmero, Lugar Decimal - 1))
Si terminar
Count = 1
Hacer Mientras MiNúmero <> ""
Temp = ObtenerCientos(Derecha(MiNúmero, 3))
Si Temp <> "" Entonces Riyals = Temp & Place (Count) & Riyals
Si Len(MiNúmero) > 3 Entonces
MiNúmero = Izquierda(MiNúmero, Len(MiNúmero) - 3)
otro
MiNumero = ""
Si terminar
Count = Count + 1
Red ISTE Loop
Seleccione Case Riyals
Caso ""
Riyales = "Sin Riyal"
Caso "Uno"
Riyals = "Solo un Riyal"
Caso Else
Riyales = "Solo" & Riyales
Riyales = Riyales & ""
Fin Seleccionar
Seleccionar caso Halalas
Caso ""
Halalas = "& 00/00 riales"
Caso "Uno"
Halalas = "& 01/100 riales"
Caso "Dos"
Halalas = "& 02/100 riales"
Caso "Tres"
Halalas = "& 03/100 riales"
Caso "Cuatro"
Halalas = "& 04/100 riales"
Caso "Cinco"
Halalas = "& 05/100 riales"
Caso "Seis"
Halalas = "& 06/100 riales"
Caso "Siete"
Halalas = "& 07/100 riales"
Caso "Ocho"
Halalas = "& 08/100 riales"
Caso "Nueve"
Halalas = "& 09/100 riales"
Caso "Diez"
Halalas = "& 10/100 riales"
Caso "Once"
Halalas = "& 11/100 riales"
Caso "Doce"
Halalas = "& 12/100 riales"
Caso "Trece"
Halalas = "& 13/100 riales"
Caso "Catorce"
Halalas = "& 14/100 riales"
Caso "Quince"
Halalas = "& 15/100 riales"
Caso "Dieciséis"
Halalas = "& 16/100 riales"
Caso "Diecisiete"
Halalas = "& 17/100 riales"
Caso "Dieciocho"
Halalas = "& 18/100 riales"
Caso "Diecinueve"
Halalas = "& 19/100 riales"
Caso "Veinte"
Halalas = "& 20/100 riales"
Caso "Veintiuno"
Halalas = "& 21/100 riales"
Caso "Veintidós"
Halalas = "& 22/100 riales"
Caso "Veintitrés"
Halalas = "& 23/100 riales"
Caso "Veinticuatro"
Halalas = "& 24/100 riales"
Caso "Veinticinco"
Halalas = "& 25/100 riales"
Caso "Veintiséis"
Halalas = "& 26/100 riales"
Caso "Veintisiete"
Halalas = "& 27/100 riales"
Caso "Veintiocho"
Halalas = "& 28/100 riales"
Caso "Veintinueve"
Halalas = "& 29/100 riales"
Caso "Treinta"
Halalas = "& 30/100 riales"
Caso "Treinta y Uno"
Halalas = "& 31/100 riales"
Caso "Treinta y dos"
Halalas = "& 32/100 riales"
Caso "Treinta y Tres"
Halalas = "& 33/100 riales"
Caso "Treinta y cuatro"
Halalas = "& 34/100 riales"
Caso "Treinta y cinco"
Halalas = "& 35/100 riales"
Caso "Treinta y seis"
Halalas = "& 36/100 riales"
Caso "Treinta y Siete"
Halalas = "& 37/100 riales"
Caso "Treinta y ocho"
Halalas = "& 38/100 riales"
Caso "Treinta y Nueve"
Halalas = "& 39/100 riales"
Caso "Cuarenta"
Halalas = "& 40/100 riales"
Caso "Cuarenta y Uno"
Halalas = "& 41/100 riales"
Caso "Cuarenta y dos"
Halalas = "& 42/100 riales"
Caso "Cuarenta y Tres"
Halalas = "& 43/100 riales"
Caso "Cuarenta y Cuatro"
Halalas = "& 44/100 riales"
Caso "Cuarenta y cinco"
Halalas = "& 45/100 riales"
Caso "Cuarenta y seis"
Halalas = "& 46/100 riales"
Caso "Cuarenta y Siete"
Halalas = "& 47/100 riales"
Caso "Cuarenta y ocho"
Halalas = "& 48/100 riales"
Caso "Cuarenta y Nueve"
Halalas = "& 49/100 riales"
Caso "Cincuenta"
Halalas = "& 50/100 riales"
Caso "Cincuenta y Uno"
Halalas = "& 51/100 riales"
Caso "Cincuenta y dos"
Halalas = "& 52/100 riales"
Caso "Cincuenta y tres"
Halalas = "& 53/100 riales"
Caso "Cincuenta y cuatro"
Halalas = "& 54/100 riales"
Caso "Cincuenta y cinco"
Halalas = "& 55/100 riales"
Caso "Cincuenta y seis"
Halalas = "& 56/100 riales"
Caso "Cincuenta y Siete"
Halalas = "& 57/100 riales"
Caso "Cincuenta y ocho"
Halalas = "& 58/100 riales"
Caso "Cincuenta y nueve"
Halalas = "& 59/100 riales"
Caso "Sesenta"
Halalas = "& 60/100 riales"
Caso "Sesenta y Uno"
Halalas = "& 61/100 riales"
Caso "Sesenta y Dos"
Halalas = "& 62/100 riales"
Caso "Sesenta y Tres"
Halalas = "& 63/100 riales"
Caso "Sesenta y Cuatro"
Halalas = "& 64/100 riales"
Caso "Sesenta y cinco"
Halalas = "& 65/100 riales"
Caso "Sesenta y seis"
Halalas = "& 66/100 riales"
Caso "Sesenta y Siete"
Halalas = "& 67/100 riales"
Caso "Sesenta y ocho"
Halalas = "& 68/100 riales"
Caso "Sesenta y Nueve"
Halalas = "& 69/100 riales"
Caso "Setenta"
Halalas = "& 70/100 riales"
Caso "Setenta y Uno"
Halalas = "& 71/100 riales"
Caso "Setenta y Dos"
Halalas = "& 72/100 riales"
Caso "Setenta y Tres"
Halalas = "& 73/100 riales"
Caso "Setenta y cuatro"
Halalas = "& 74/100 riales"
Caso "Setenta y cinco"
Halalas = "& 75/100 riales"
Caso "Setenta y Seis"
Halalas = "& 76/100 riales"
Caso "Setenta y Siete"
Halalas = "& 77/100 riales"
Caso "Setenta y Ocho"
Halalas = "& 78/100 riales"
Caso "Setenta y Nueve"
Halalas = "& 79/100 riales"
Caso "Ochenta"
Halalas = "& 80/100 riales"
Caso "Ochenta y Uno"
Halalas = "& 81/100 riales"
Caso "Ochenta y Dos"
Halalas = "& 82/100 riales"
Caso "Ochenta y Tres"
Halalas = "& 83/100 riales"
Caso "Ochenta y Cuatro"
Halalas = "& 84/100 riales"
Caso "Ochenta y Cinco"
Halalas = "& 85/100 riales"
Caso "Ochenta y Seis"
Halalas = "& 86/100 riales"
Caso "Ochenta y Siete"
Halalas = "& 87/100 riales"
Caso "Ochenta y Ocho"
Halalas = "& 88/100 riales"
Caso "Ochenta y Nueve"
Halalas = "& 89/100 riales"
Caso "Noventa"
Halalas = "& 90/100 riales"
Caso "Noventa y Uno"
Halalas = "& 91/100 riales"
Caso "Noventa y Dos"
Halalas = "& 92/100 riales"
Caso "Noventa y Tres"
Halalas = "& 93/100 riales"
Caso "Noventa y Cuatro"
Halalas = "& 94/100 riales"
Caso "Noventa y cinco"
Halalas = "& 95/100 riales"
Caso "Noventa y seis"
Halalas = "& 96/100 riales"
Caso "Noventa y Siete"
Halalas = "& 97/100 riales"
Caso "Noventa y ocho"
Halalas = "& 98/100 riales"
Caso "Noventa y Nueve"
Halalas = "& 99/100 riales"


Caso Else
Halalas = "&" & Halalas & "Halalas"
Fin Seleccionar
Facturación de hechizos = riales y halalas
Función finales


' Convierte un número del 100 al 999 en texto
Función ObtenerCientos(ByVal MiNúmero)
Resultado atenuado como cadena
Si Val (MyNumber) = 0, entonces salga de la función
MiNúmero = Derecha("000" & MiNúmero, 3)
' Convierte el lugar de las centenas.
Si Mid(MiNúmero, 1, 1) <> "0" Entonces
Resultado = GetDigit(Mid(MyNumber, 1, 1)) & " Cien "
Si terminar
' Convierte el lugar de las decenas y las unidades.
Si Mid(MiNúmero, 2, 1) <> "0" Entonces
Resultado = Resultado & GetTens(Mid(MyNumber, 2))
otro
Resultado = Resultado & GetDigit(Mid(MyNumber, 3))
Si terminar
GetHundreds = Resultado
Función finales

' Convierte un número del 10 al 99 en texto.
Función ObtenerDecenas(TextoDeDecenas)
Resultado atenuado como cadena
Result = "" ' Anula el valor de la función temporal.
If Val(Left(TensText, 1)) = 1 Then ' If value between 10-19...
Seleccionar valor de mayúsculas y minúsculas (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
Fin Seleccionar
Else ' Si el valor está entre 20 y 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 Else
Fin Seleccionar
Resultado = Resultado & GetDigit _
(Right(TensText, 1)) ' Recuperar el lugar de unos.
Si terminar
ObtenerDecenas = Resultado
Función finales

' Convierte un número del 1 al 9 en texto.
Función ObtenerDígito(Dígito)
Seleccionar valor de caso (dígito)
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 contrario: GetDigit = ""
Fin Seleccionar
Función finales
Este comentario fue minimizado por el moderador en el sitio
Necesito aplicar todo Excell Workbook. Cómo aplicar esta codificación a todos los libros de Excel.
Este comentario fue minimizado por el moderador en el sitio
Rupias catorce mil ochocientos setenta y cinco Sólo la última cantidad debe tener la palabra y ejemplo
rupias catorce mil ochocientos setenta y cinco solamente
Este comentario fue minimizado por el moderador en el sitio
no puede leer más de 10 millones de rupias.
Este comentario fue minimizado por el moderador en el sitio
One Lac Sixty Nine Thousand Eighty One and Forty Two Paise: no se convirtió correctamente. Tampoco se convirtió la cifra anterior cuando se redondea.
Este comentario fue minimizado por el moderador en el sitio
GRACIAS POR EL CODIGO...
Este comentario fue minimizado por el moderador en el sitio
Gracias por la codificación. Apliqué y está funcionando. Pero solo se aplica a ese libro de trabajo en particular. Necesito aplicar todo Excell Workbook. Cómo aplicar esta codificación a todos los libros de Excel.
Este comentario fue minimizado por el moderador en el sitio
Hola, SivaG
Sí, este código es una función definida por el usuario, debe aplicar la fórmula a los archivos uno por uno, si necesita un código para aplicar a varios libros de trabajo, se aplicará a todos los números, por lo que se cambiarán todos los números. Y el código no admite deshacer, existen algunos riesgos de seguridad. No se recomienda hacer esto. ¡Gracias!
Este comentario fue minimizado por el moderador en el sitio
¿Cómo se puede eliminar la palabra "Rupias"? Normalmente, las hojas de cheques ya tienen la palabra "Rupias".
Este comentario fue minimizado por el moderador en el sitio
Hola Sakariya
Para resolver su problema, aplique el siguiente código:
Public Function RupeeFormat(SNum As String)
'Updateby Extendoffice
Dim xDPInt As Integer
Dim xArrPlace As Variant
Dim xRStr_Paisas As String
Dim xNumStr As String
Dim xF As Integer
Dim xTemp As String
Dim xStrTemp As String
Dim xRStr As String
Dim xLp As Integer
xArrPlace = Array("", "", " Thousand ", " Lacs ", " Crores ", " Trillion ", "", "", "", "")
On Error Resume Next
If SNum = "" Then
  RupeeFormat = ""
  Exit Function
End If
xNumStr = Trim(Str(SNum))
If xNumStr = "" Then
  RupeeFormat = ""
  Exit Function
End If

xRStr = ""
xLp = 0
If (xNumStr > 999999999.99) Then
    RupeeFormat = "Digit excced Maximum limit"
    Exit Function
End If
xDPInt = InStr(xNumStr, ".")
If xDPInt > 0 Then
    If (Len(xNumStr) - xDPInt) = 1 Then
       xRStr_Paisas = RupeeFormat_GetT(Left(Mid(xNumStr, xDPInt + 1) & "0", 2))
    ElseIf (Len(xNumStr) - xDPInt) > 1 Then
       xRStr_Paisas = RupeeFormat_GetT(Left(Mid(xNumStr, xDPInt + 1), 2))
    End If
        xNumStr = Trim(Left(xNumStr, xDPInt - 1))
    End If
    xF = 1
    Do While xNumStr <> ""
        If (xF >= 2) Then
            xTemp = Right(xNumStr, 2)
        Else
            If (Len(xNumStr) = 2) Then
                xTemp = Right(xNumStr, 2)
            ElseIf (Len(xNumStr) = 1) Then
                xTemp = Right(xNumStr, 1)
            Else
                xTemp = Right(xNumStr, 3)
            End If
        End If
        xStrTemp = ""
        If Val(xTemp) > 99 Then
            xStrTemp = RupeeFormat_GetH(Right(xTemp, 3), xLp)
            If Right(Trim(xStrTemp), 3) <> "Lac" Then
            xLp = xLp + 1
            End If
        ElseIf Val(xTemp) <= 99 And Val(xTemp) > 9 Then
            xStrTemp = RupeeFormat_GetT(Right(xTemp, 2))
        ElseIf Val(xTemp) < 10 Then
            xStrTemp = RupeeFormat_GetD(Right(xTemp, 2))
        End If
        If xStrTemp <> "" Then
            xRStr = xStrTemp & xArrPlace(xF) & xRStr
        End If
        If xF = 2 Then
            If Len(xNumStr) = 1 Then
                xNumStr = ""
            Else
                xNumStr = Left(xNumStr, Len(xNumStr) - 2)
            End If
       ElseIf xF = 3 Then
            If Len(xNumStr) >= 3 Then
                 xNumStr = Left(xNumStr, Len(xNumStr) - 2)
            Else
                xNumStr = ""
            End If
        ElseIf xF = 4 Then
          xNumStr = ""
    Else
        If Len(xNumStr) <= 2 Then
        xNumStr = ""
    Else
        xNumStr = Left(xNumStr, Len(xNumStr) - 3)
        End If
    End If
        xF = xF + 1
Loop
    If xRStr = "" Then
       xRStr = "No Rupees"
    Else
       xRStr = xRStr
    End If
    If xRStr_Paisas <> "" Then
       xRStr_Paisas = " and " & xRStr_Paisas & " Paisas"
    End If
    RupeeFormat = xRStr & xRStr_Paisas & " Only"
    End Function
Function RupeeFormat_GetH(xStrH As String, xLp As Integer)
Dim xRStr As String
If Val(xStrH) < 1 Then
    RupeeFormat_GetH = ""
    Exit Function
Else
   xStrH = Right("000" & xStrH, 3)
   If Mid(xStrH, 1, 1) <> "0" Then
        If (xLp > 0) Then
         xRStr = RupeeFormat_GetD(Mid(xStrH, 1, 1)) & " Lac "
        Else
         xRStr = RupeeFormat_GetD(Mid(xStrH, 1, 1)) & " Hundred "
        End If
    End If
    If Mid(xStrH, 2, 1) <> "0" Then
        xRStr = xRStr & RupeeFormat_GetT(Mid(xStrH, 2))
    Else
        xRStr = xRStr & RupeeFormat_GetD(Mid(xStrH, 3))
    End If
End If
    RupeeFormat_GetH = xRStr
End Function
Function RupeeFormat_GetT(xTStr As String)
    Dim xTArr1 As Variant
    Dim xTArr2 As Variant
    Dim xRStr As String
    xTArr1 = Array("Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eighteen", "Nineteen")
    xTArr2 = Array("", "Twenty", "Thirty", "Forty", "Fifty", "Sixty", "Seventy", "Eighty", "Ninety")
    Result = ""
    If Val(Left(xTStr, 1)) = 1 Then
        xRStr = xTArr1(Val(Mid(xTStr, 2, 1)))
    Else
        If Val(Left(xTStr, 1)) > 0 Then
            xRStr = xTArr2(Val(Left(xTStr, 1)) - 1)
        End If
        xRStr = xRStr & RupeeFormat_GetD(Right(xTStr, 1))
    End If
      RupeeFormat_GetT = xRStr
End Function
Function RupeeFormat_GetD(xDStr As String)
Dim xArr_1() As Variant
    xArr_1 = Array(" One", " Two", " Three", " Four", " Five", " Six", " Seven", " Eight", " Nine", "")
    If Val(xDStr) > 0 Then
        RupeeFormat_GetD = xArr_1(Val(xDStr) - 1)
    Else
        RupeeFormat_GetD = ""
    End If
End Function



Por favor, inténtalo, ¡espero que te pueda ayudar!
Este comentario fue minimizado por el moderador en el sitio
Muchas gracias... 🙂
Este comentario fue minimizado por el moderador en el sitio
Pero esto es aplicable a un solo excel. Si ingreso esta fórmula en otro Excel, esto no funciona
cual es la solucion para esto
por favor revierte
Este comentario fue minimizado por el moderador en el sitio
Hola,

Si tiene varios libros de trabajo, debe copiar el código en varios libros de trabajo.
Si solo lo copia en un libro de trabajo, no funcionará en otros libros de trabajo. 😀
Por favor, intente, ¡gracias!
Este comentario fue minimizado por el moderador en el sitio
muchas gracias es muy util
Este comentario fue minimizado por el moderador en el sitio
Hola señor, ¿es posible configurar esto de forma predeterminada para cada hoja de trabajo de Excel o no?
Este comentario fue minimizado por el moderador en el sitio
Hola Mukesh

Sí, siempre que el código se copie en el módulo de ventana vba, la fórmula se puede aplicar a todo el libro de trabajo.
Pero al cerrar el libro de trabajo, debe guardarlo como Libro de Excel habilitado para macros formato de archivo.
Por favor, inténtalo, ¡gracias!
Este comentario fue minimizado por el moderador en el sitio
Intenté varias veces, no funciona. Por favor ayuda
Este comentario fue minimizado por el moderador en el sitio
Hey, Great Help! Thanks for creating such a wonderful code.

It has saved a lot of time. "God Bless You!!"
No hay comentarios publicados aquí todavía
Deje sus comentarios
Publicar como invitado
×
Califica esta publicación:
0   Personajes
Ubicaciones sugeridas

Seguinos

Copyright © 2009 - www.extendoffice.com. | Reservados todos los derechos. Energizado por ExtendOffice, | Mapa del Sitio
Microsoft y el logotipo de Office son marcas comerciales o marcas comerciales registradas de Microsoft Corporation en los Estados Unidos y / o en otros países.
Protegido por Sectigo SSL