Una familia de software de hoja de cálculo de Microsoft con herramientas para analizar, trazar y comunicar datos.
Hola
¡Saludos por el día! Me complace ayudarlo con respecto a la consulta de Excel sobre la construcción de una fórmula para convertir números en letras.
Excel no tiene una función predeterminada que muestre números como palabras en inglés en una hoja de cálculo, pero puede agregar esta capacidad pegando el siguiente código de función SpellNumber en un módulo VBA (Visual Basic para Aplicaciones).
Esta función le permite convertir cantidades de dólar y centavo en palabras con una fórmula.
Paso 1: Crea la función SpellNumber para convertir números en palabras
- Utilice el método abreviado de teclado, Alt + F11 para abrir el Editor de Visual Basic (VBE).
- Haga clic en la pestaña Insertar y haga clic en Módulo.
- Copie las siguientes líneas de código.
Opción explícita «Función principal Función SpellNumber(ByVal MyNumber) Dólares tenues, centavos, temp Dim DecimalPlace, Contar Redim place(9) como cadena Lugar(2) = " Mil " Lugar(3) = " Millón " Lugar(4) = " Mil millones " Lugar(5) = " Trillón " ' Representación de cadena de la cantidad. MyNumber = Trim(Str(MyNumber)) ' Posición del decimal 0 si no. DecimalPlace = InStr(MyNumber, ".") ' Convierta centavos y establezca MyNumber en un monto en dólares. Si DecimalPlace > 0 entonces Centavos = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & _ "00", 2)) MyNumber = Trim(Left(MyNumber, DecimalPlace - 1)) Fin si Recuento = 1 Hacer mientras MyNumber <> "" Temp = GetHundreds(Derecha(MyNumber, 3)) Si Temp <> "" entonces Dólares = Temp & Place(Count) & Dollars Si Len(MyNumber) > 3 entonces MyNumber = Izquierda(MyNumber, Len(MyNumber) - 3) Más MyNumber = "" Fin si Contar = Contar + 1 Bucle Seleccione Los dólares del caso Caso "" Dólares = "Sin dólares" Caso "Uno" Dólares = "Un dólar" Caso más Dólares = Dólares y "Dólares" Finalizar selección Seleccione Centavos de caja Caso "" Centavos = "y sin centavos" Caso "Uno" Centavos = " y un centavo" Caso más Centavos = " y " & Centavos & "Centavos" Finalizar selección SpellNumber = Dólares y centavos Función final
' Convierte un número de 100-999 en texto Función GetHundreds(ByVal MyNumber) Resultado atenuado como cadena Si Val(MyNumber) = 0 entonces exit function MyNumber = Derecha("000" & MyNumber, 3) ' Convierte el lugar de los cientos. Si Mid(MyNumber, 1, 1) <> "0" entonces Resultado = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred " Fin si ' Convierte las decenas y los unos lugares. Si Mid(MyNumber, 2, 1) <> "0" entonces Resultado = Resultado y GetTens(Mid(MyNumber, 2)) Más Resultado = Result & GetDigit(Mid(MyNumber, 3)) Fin si GetHundreds = Resultado Función final
' Convierte un número del 10 al 99 en texto. Función GetTens(TensText) Resultado atenuado como cadena Resultado = "" ' Null el valor de la función temporal. Si Val(Left(TensText, 1)) = 1 Then ' Si 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 más Finalizar selección Else ' Si el valor entre 20-99... Seleccione Case Val(Left(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 Finalizar selección Resultado = Resultado y GetDigit _ (Derecha(TensText, 1)) ' Recuperar el lugar. Fin si GetTens = Resultado Función final
' Convierte un número del 1 al 9 en texto. Función GetDigit(Dígito) Seleccione el valor del 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 más: GetDigit = "" Finalizar selección Función final
- Pegue las líneas de código en el cuadro Module1 (Código).
- Presione Alt + Q para volver a Excel. La función SpellNumber ya está lista para usar.
Paso 2: Usar la función SpellNumber en celdas individuales
- Escriba la fórmula =SpellNumber(A1) en la celda donde desea mostrar un número escrito, donde A1 es la celda que contiene el número que desea convertir. También puede escribir manualmente el valor como =SpellNumber(22.50). 2 Pulse Intro para confirmar la fórmula.
Por favor, encuentre los detalles en el siguiente enlace. https://support.microsoft.com/officea0d166fb-e1ea-4090-95c8-69442cd55d98#:~:text=Type%20the%20formula%20%3DSpellNumber(A1,like%20%3DSpellNumber(22.50).
Espero que esta información ayude. Si tiene alguna pregunta, hágamelo saber y estaré encantado de ayudarle.
Ayude a la siguiente persona que tenga este problema indicando si esta respuesta resolvió su problema. Haga clic en Sí o No a continuación.
Saludos Ravikumar
Esta respuesta se ha traducido automáticamente. Como resultado, puede haber errores gramaticales o expresiones extrañas.