Fórmula números a letras

46
62756

La conversión de montos a palabras en informes o facturas es fundamental. A pesar de que Excel no aborda completamente estas necesidades, los programadores especializados en VBA (Visual Basic for Applications) han diseñado macros específicas para esta tarea. En este blog se presenta una función llamada ‘Números a Letras’, cuya implementación en nuestras actividades ofrece una solución eficiente y efectiva a esta problemática.

 Sé un experto en EXCEL, llevando el curso de: MICROSOFT OFFICE EXCEL

Instrucciones a seguir:

  1. Para utilizar esta función, debes descargar la plantilla desde la página de Descargas, llamada Pasar Números a Letras, y guardarla preferiblemente en el escritorio.
  2. Una vez obtenida la macro, podrás acceder a ella fácilmente en tu Excel:
  3. Bastaría con tipear el número en la región sombreada de verde.
  4. También puedes poner el nombre la función  =num_letras()
No lo pienses más y especialízate en: INTEGRACIÓN CONTABLE A EXCEL

Te recomendamos leer que también se habla sobre MACRO PARA:

Conoce más en este video: Excel Empresarial Básico.

¿Te ha resultado útil este artículo? ¡Nos encantaría conocer tu opinión!

Comentarios

PROGRAMA DE ESPECIALIZACION GESTIÓN TRIBUTARIA

Inicia: Sabado 06 de Abril

Horario: 6:30 p.m. - 10:30 p.m.

Frecuencia: 1 una vez

Modalidad: EN VIVO



0 0 votes
Article Rating
Suscribe
Notify of
guest

46 Comentarios
Antiguos
Nuevos El mas votado
Inline Feedbacks
View all comments
ivan
ivan
14 años atrás

HE INSERTADO ESTA FUNCION NUM_LETRAS pero necesito que
denominación de “Nuevos Soles” se cambie por quetzales.

Me podrian ayudar?,gracias

Ivan Diaz

Gabriel
Gabriel
14 años atrás

ya puse el programa en mi hoja Excel y me funciona de maravilla, de verdad Fernando me has ayudado mucho, pero te queria preguntar algo??, yo facturo en monto de soles y dolares, no seria posible añadir algo a tu porgrama para que fuera optativo, es decir solo cambiar la ultima frase de «Nuevo soles a «Dolares Americanos» y viceversa.

gracias de antemano por tu valiosa ayuda.

si me podrias contestar a mi correo gabrieldasilva188@msn.com

Gabriel.

yony
yony
14 años atrás

He insertado el programa en la hoja excel y funciona de maravilla, Gracias

Maribel
Maribel
14 años atrás

Tu programa es excelente ,muchas gracias por tu ayuda,solo quisiera hacerte la misma consulta de gabriel y si se puede escribir en MAYUSCULAS.te agradeceria si me respondieras a mi correo.
Maribel.

Linder Díaz M
Linder Díaz M
14 años atrás

Quedo exelente solo una pregunta yo hago facturas en soles y en dolares americanos, quisiera saber como hacer para que diga dolares americanos, e antemano muchas gracias

Sebastiani
14 años atrás
Contestar a  Linder Díaz M

Ahora la formula lo actualize, descargala nuevamente y mira el video.
Saludos

Maricarmen Ramos
Maricarmen Ramos
14 años atrás

preparo facturas en dólares y nuevos soles como puedo hacer para que diga dolares americanos

Gracias

Maricarmen Ramos
Maricarmen Ramos
14 años atrás

Espero su pronta respuesta

Sebastiani
14 años atrás
Contestar a  Maricarmen Ramos

Ya fue actualizado el post, ahora podras usar la moneda que desees.
saludos

Armando
Armando
14 años atrás

Buen dia Fernando

Tengo vista y la ruta que me das en el paso 3
3.-Ir a C:Documents and SettingsAdministradorDatos de programaMicrosoftComplementos o en algunas versiones dice “AddIns”.

no la tengo como tal, puedes indicarme donde pegar el archivo k descarge o desirme k opciones tengo
Gracias

Armando Rdz. Chavez
Monterrey, N.L.

Jaime
Jaime
14 años atrás

Saludos muy util e interesante su herramienta pero tiene un error en los valores de centenas de mil por ejemplo 126.345,00 lo devuelve como Ciento mil Veinte y Seis Mil Trescientos Cincuenta y Cuatro y 00/100 Dolares Americanos

Jaime
Jaime
14 años atrás

quisiera saber si se le puede modificar este error…o explicar como corregirlo

marco tulio rojas cavero
marco tulio rojas cavero
14 años atrás

hola Armando, aprecio tu valioso aporte y desde ahora este sera mi blog ya que el excel es mi programa favorito y se complementa con mi otra pasion: la contabilidad. hace un mes atras diseñe un programa de planillas para el regimen de construccion bajo el soporte de macros, lo diseñe pensando en los requerimientos del area de rr.hh de la empresa en donde trabajo, como entenderas para calcular esta planilla se debe tener en cuenta las categorias y las diversas bonificaciones que tiene los trabajadores bajo este regimen. me gustaria compartirlo en el blog, pero antes me gustaria que le des una revisada y le puedas aportar otras cosas, ya que si bien es cierto cubrio las expectativas de mi empresa, sigo creyendo que aun le faltan detalles que no puedo implementar xq aun no domino muy bien las macros-
saludos cordiales-

marco

césar
césar
14 años atrás

hola Armando, tengo problemas para números de 7 dígitos, no los escribe.

gracias por el programa.

serioman
serioman
14 años atrás

hola amigos:
si el error que lanza de «mil» se puede corregir.
estando en excel presionen alt +f11, luego busquen la palabra «mil» en la linea 119 (miren en la barra de herramientas Lin, 119 Col,17 (bueno la columna no es necesaria)

y luego reemplacen esa linea por esta

letras = letras & » » ‘ mil »

parece inofensivo pero la comilla despues de los parentesis convierte al resto a la derecha en comentario y por lo tanto inofensivo es decir lo desabilitan

si no les gusto solo abran y encierren el mil en con comillas como estaba antes y todo vuelve a la normalidad

serioman
serioman
14 años atrás

me olvidaba sorry antes de salir pulsen grabar

sorry otra vez, al creador de esta macros mil disculpas por meterle mano.
Esta en tus manos el crear nuevos programas y corregirlos, pero nosotros te ayudaremos a mejorarlo usandolo.

gracias por este aporte. gracias mil

Gianfree
Gianfree
14 años atrás

Hola te felicito por tu aporte, la verdad es bueno pero como sabras cualquier programa antes de lanzarlo a su conocimiento al publico debe ser bien revisado, ya q este es uno de los mayores problemas en todas las empresas q manejan programas, no se porque pero siempre sus software estan diseñados a medias, te recomiendo revises adicionalmente a los que ya algunos colegas han mencionado ciertas inconsistencias el porque no salen los 200,000; 300,000; etc… seria bueno le des una chequeada derrepente encuentras algo mas y mejoras tu aporte… gracias y suerte!!

Flor
Flor
13 años atrás

Hola: sabes he descargado el programa pero no lo puedo usar que me faltara sale como: #¡VALOR! segui todos los pasos. dame una ayuda te agradezco Saludos , Flor

edgar jose
edgar jose
13 años atrás

nbuenao de excel para contruir un certificacion de un colegio

trackback

[…] en toda las versiones de excel (incluido el 2010) y no eh tenido suerte, así que leyendo el blog de la comunidad de un amigo, me topé con esta aplicación que será de mucha ayuda para muchos.. Datos técnicos […]

Mario
Mario
13 años atrás

Muchas gracias, esta macro me ha aliviado bastante el trabajo de generar recibos. Es lo que estaba buscando.

Para aquellos que les sale #¡VALOR!, deben de ingresar el numero 1 o 2 como opción, el número «1» le pone las letras del tipo de moneda al final y el número 2 le quita.

Saludos.

GILMER ORTIZ IDROGO
GILMER ORTIZ IDROGO
13 años atrás

hola amigos programadores les queria felicitar por su trabajo esta super¿ lo que era mi inquietu es de como yo lo puedo descar para poder probarlo para poder comprarlo

Sebastiani
13 años atrás
Contestar a  GILMER ORTIZ IDROGO

no se vende amigo, es gratis, al comenzar la web esta la descarga.

DANIEL
DANIEL
13 años atrás

TE AGRADEZCO ESTE GRAN PORTE, SIN EMBARGO, QUISIERA SABER SI SE PUEDE MODIFICAR EL RANGO DE CANTIDADES EN VEINTE COMO POR EJEMPLO VEINTIUNO VEITIDOS Y NO VENITE Y DOS QUE EN REALIDAD NO ES ACEPTADO POR LA REAL ACADEMIA DE LA LENGUA COMO VALIDO

Danny Villar
Danny Villar
13 años atrás

Buenas Compañero, excelente toda tu explicacion y trabajo, pero debo estar aciendo algo mal ya que cuando escribo la cifra 100,50 me devuelve en letras CIEN CON 50/100 CENTIMOS, hasta aca todo va bien , el problema se presenta cuando pongo 100,00 y me devuelve CIEN sin aparecer «con xx/100 CENTIMOS» que hay que cambiar para que eso aparezca ya que es impresindible para la elaboracion de Cheques.

mil gracias por todo tu apoyo

Saludos Cordiales
Danny Villar
Caracas – Venezuela

harvey
harvey
13 años atrás

gracias estuvo super bien, oye una pregunta la verdad yo he batallado en hacer en excel un formato para imprimir en los cheques de los diferentes bancos de aqui de mexico. sera que no me podrias ayudar con eso

luz
luz
13 años atrás

Excelente todo tu trabajo gracias es justo lo que nesesitaba ahora me ahorro el trabajo de estar escribiendo numeros en letras

y mucha suerte en tus proximos programas

jakelin
jakelin
13 años atrás

hola, antes que nada te felicito es muy bueno tu trabajo pero hay alguna formas de sustituir al final el: » Y 00/100″ por: «con 00/100»

Sebastiani
13 años atrás
Contestar a  jakelin

claro, busca en la parte del codigo y cambialo por lo q necesitas

carla
carla
13 años atrás

k pasa si en la factura se coloca 100/00

roberto
roberto
13 años atrás

buenas tardes muchsa gracias por la info solo tengo una duda si me pueden ayudar al final de letras por ejemplo un mil docientos con 25/100
que antes del con puede poner quetzales como procederia para que dijera asi un docientos queztales con 25/100
en espera de su valiosa ayuda muchas gracias
y muy bueno este programita para convertir numeros a letras

karen
karen
13 años atrás

Lo he probado y me parece genial tu aporte, la verdad que al comienzo me aparecia valor… pero leyendo los comentarios me salio :)… bueno he intendado ver el video .. pero no lo descarga en mi maquina… pero con la opciòn 2 que nos distes nos ayuda bastante ya que si al numero que hemos escrito le concatenamos la moneda que querramos o a elección en un area fuera de impresión nos devuelve ccualquier moneda..ejemplo:
=num_letras(B32;2)&E32… en podemos tenerlo escrito(Dolares Americanos, soles lo que querramos y lo adiciona a la factura a nuestra eleccion, señalando la celda.

Muchas gracias Gracias Sebastiani, la verdad que talvez ya lo sepan pero por ahi a alguien le pueda servir…..

TONY MONTANA
TONY MONTANA
12 años atrás

Tu programa es excelente ,muchas gracias por tu ayuda,solo quisiera hacerte la misma consulta de gabriel y si se puede escribir en MAYUSCULAS.te agradeceria si me respondieras a mi correo.

ronald
ronald
12 años atrás

muy interesante, si solo necesito que digite el numero independiente de la moneda. gracias por el aporte

Carlos Joaquin
Carlos Joaquin
12 años atrás

Hola, gracias por tu aporte. Pero no veo en los comentarios como solucionar el problema de que no esta poniendo bien las cifras de 200,000, 300,000, 400,000 le falta colocar los miles.

VICTOR
VICTOR
12 años atrás

hola sebastian no me funciona será porque cuento con el excel 2010?? te comento que no encontre el archivo complementos mas bien «ADDins» y es aquí en donde coloqué el archivo descargaDO.

la formula «Num_letras» me aparece como funcion pero cuando fijo la celda que quiero que se convierta me sale siempre el error muy conocido denominado:
VALOR

EL_TIGRE
EL_TIGRE
12 años atrás

Tengo problema con el complemento, ya que al ejecutar la funciòn se ejecuta bien, pero al ser modificado la celda donde se encuentra el nùmero se bloquea todo el libro de excel perdiendo toda la informaciòn realizada, serà que solo se puede ejecutar una sola vez, ademas no me permite ser ejecutado en distintos archivos de excel.
En espera de comentarios.

Alejandro
Alejandro
12 años atrás

Hola, primera agradecerte por los aportes, pero tengo un problema, voy a complementos, luego a ir, pero no aparece la función Num_letras, me puedes ayudar en este caso, muchas gracias de antemano

Rafael
Rafael
12 años atrás

Por favor, le agradezco respuesta. Instale la funcion y me da un error. Por Que sera eso? Dice #VALOR

Roberto
Roberto
12 años atrás

Muchas gracias Sebastián, Genial aporte. Le he heccho algunas modificaciones, siguiendo tus instrucciones incluí el Euro, más abajo eliminé el «un» de «Mil» y puse en mayúscula «Ciento», ha sido un buen ejercicio. Ahora estoy tratando de incluir «dieciseís…dicinueve» y «veintiuno…veintinueve», pero me parece que requiero algo de ayuda.

Gracias nuevamente

Francisco García Trujillo
Francisco García Trujillo
12 años atrás

Como no puedo adjuntar el archivo, anexo el código modificado que corrige la mayoría de los errores citados anteriormente.
La forma de uso cambia ahora a:
=num_letras( cantidad en numero , moneda [si se usa en este punto], conjuncion [si se usa], moneda [si se usa en este otro punto] ). ejemplo:

=num_letras( cantidad en numero , «Pesos», «», «M.N.» )
=num_letras( cantidad en numero , «», «y», «nuevos soles» )

Éste es el nuevo código:
‘Autor de la modificacion: Gustavo A. Sebastiani Cépeda
‘ Trujillo – Peru
Excelparacontadores@hotmail.com http://www.perucontable.com/excelcontable/formula-numeros-a-letras/
‘Depurado por Francisco García Trujillo – Morelia – México – Octubre 2011
‘errores conocidos aún pendientes:
‘cien millones (de) pesos
‘treinta y uno pesos
‘no admite decenas de miles de millones (más de 7 dígitos)
‘Uso para Perú: =num_letras( cantidad en numero )
‘Uso para México: =num_letras( cantidad en numero , «Pesos», «», «M.N.» )
Function Num_Letras(Numero As Double, Optional Prefijo As String = «», Optional Conjuncion As String = «y», Optional Postfijo As String = «nuevos soles») As String
Dim Letras As String
Dim Decimales As Double
Decimales = Numero – Int(Numero)
Numero = Int(Numero)

If Prefijo > «» Then
Prefijo = Prefijo & » »
End If

If Conjuncion > «» Then
Conjuncion = Conjuncion & » »
End If

If Postfijo > «» Then
Postfijo = » » & Postfijo
End If

Dim Numeros(90) As String
Numeros(0) = «Cero»
Numeros(1) = «Uno»
Numeros(2) = «Dos»
Numeros(3) = «Tres»
Numeros(4) = «Cuatro»
Numeros(5) = «Cinco»
Numeros(6) = «Seis»
Numeros(7) = «Siete»
Numeros(8) = «Ocho»
Numeros(9) = «Nueve»
Numeros(10) = «Diez»
Numeros(11) = «Once»
Numeros(12) = «Doce»
Numeros(13) = «Trece»
Numeros(14) = «Catorce»
Numeros(15) = «Quince»
Numeros(16) = «Dieciseis»
Numeros(17) = «Diecisiete»
Numeros(18) = «Dieciocho»
Numeros(19) = «Diecinueve»
Numeros(20) = «Veinte»
Numeros(21) = «Veintiuno»
Numeros(22) = «Veintidos»
Numeros(23) = «Veintitres»
Numeros(24) = «Veinticuatro»
Numeros(25) = «Veinticinco»
Numeros(26) = «Veintiseis»
Numeros(27) = «Veintisiete»
Numeros(28) = «Veintiocho»
Numeros(29) = «Veintinueve»
Numeros(30) = «Treinta»
Numeros(40) = «Cuarenta»
Numeros(50) = «Cincuenta»
Numeros(60) = «Sesenta»
Numeros(70) = «Setenta»
Numeros(80) = «Ochenta»
Numeros(90) = «Noventa»
Do
‘*—> Millares de Millón
If (Numero = 1000000000) Then
If Int(Numero / 1000000000) = 1 Then
Letras = Letras & » Un mil millones »
Else
Letras = Letras & Numeros(Int(Numero / 1000000000))
Letras = Letras & » mil millones »
End If
Numero = Numero – (Int(Numero / 1000000000) * 1000000000)
End If
‘*—> Centenas de Millón
If (Numero = 100000000) Then
If (Int(Numero / 100000000) = 1) And ((Numero – (Int(Numero / 100000000) * 100000000)) «», » de «, «»)
Else
Select Case Int(Numero / 100000000)
Case 1
Letras = Letras & «Ciento»
Case 5
Letras = Letras & «Quinientos»
Case 7
Letras = Letras & «Setecientos»
Case 9
Letras = Letras & «Novecientos»
Case Else
Letras = Letras & Numeros(Int(Numero / 100000000))
End Select
If (Int(Numero / 100000000) 1) And (Int(Numero / 100000000) 5) And (Int(Numero / 100000000) 7) And (Int(Numero / 100000000) 9) Then
Letras = Letras & «cientos »
Else
Letras = Letras & » »
End If
End If
Numero = Numero – (Int(Numero / 100000000) * 100000000)
End If
‘*—> Decenas de Millón
If (Numero = 10000000) Then
If Int(Numero / 1000000) 1000000 Then
Letras = Letras & » y »
End If
End If
End If
‘*—> Unidades de Millón
If (Numero = 1000000) Then
If Int(Numero / 1000000) = 1 Then
Letras = Letras & » Un millón »
Else
Letras = Letras & Numeros(Int(Numero / 1000000))
Letras = Letras & » millones »
End If
Numero = Numero – (Int(Numero / 1000000) * 1000000)
End If
‘*—> Centenas de Millar
If (Numero = 100000) Then
If (Int(Numero / 100000) = 1) And ((Numero – (Int(Numero / 100000) * 100000)) < 1000) Then
Letras = Letras & "Cien mil "
Else
Select Case Int(Numero / 100000)
Case 1
Letras = Letras & "Ciento"
Case 5
Letras = Letras & "Quinientos"
Case 7
Letras = Letras & "Setecientos"
Case 9
Letras = Letras & "Novecientos"
Case Else
Letras = Letras & Numeros(Int(Numero / 100000))
End Select
If (Int(Numero / 100000) 1) And (Int(Numero / 100000) 5) And (Int(Numero / 100000) 7) And (Int(Numero / 100000) 9) Then
Letras = Letras & «cientos mil »
Else
Letras = Letras & » mil »
End If
End If
Numero = Numero – (Int(Numero / 100000) * 100000)
End If
‘*—> Decenas de Millar
If (Numero = 10000) Then
If Int(Numero / 1000) 1000 Then
Letras = Letras & » y »
Else
Letras = Letras & » mil »
End If
End If
End If
‘*—> Unidades de Millar
If (Numero = 1000) Then
If Int(Numero / 1000) = 1 Then
Letras = Letras & «un»
Else
Letras = Letras & Numeros(Int(Numero / 1000))
End If
Letras = Letras & » Mil »
Numero = Numero – (Int(Numero / 1000) * 1000)
End If
‘*—> Centenas
If (Numero 99) Then
If (Int(Numero / 100) = 1) And ((Numero – (Int(Numero / 100) * 100)) < 1) Then
Letras = Letras & "Cien "
Else
Select Case Int(Numero / 100)
Case 1
Letras = Letras & "ciento"
Case 5
Letras = Letras & "quinientos"
Case 7
Letras = Letras & "setecientos"
Case 9
Letras = Letras & "novecientos"
Case Else
Letras = Letras & Numeros(Int(Numero / 100))
End Select
If (Int(Numero / 100) 1) And (Int(Numero / 100) 5) And (Int(Numero / 100) 7) And (Int(Numero / 100) 9) Then
Letras = Letras & «cientos »
Else
Letras = Letras & » »
End If
End If
Numero = Numero – (Int(Numero / 100) * 100)
End If
‘*—> Decenas
If (Numero 9) Then
If Numero 0.99 Then
Letras = Letras & » y »
End If
End If
End If
‘*—> Unidades
If (Numero 0.99) Then
Letras = Letras & Numeros(Int(Numero)) & » »
Numero = Numero – Int(Numero)
End If
Loop Until (Numero = 0)
‘*—> Decimales
If (Decimales > 0) Then
Letras = Letras & Prefijo & Conjuncion
Letras = Letras & Format(Decimales * 100, «00») & «/100» & Postfijo
Num_Letras = Letras
Else

Num_Letras = Letras & Prefijo & Conjuncion & «00/100» & Postfijo

End If

End Function

Jean
Jean
12 años atrás

amigo excelente aporte, me has facilitado mucho el trabajo, pero tengo un problemita o un detallito, modifique la linea 119 como dices quitando la palabra MIL, el problema es cuando hay una cifra por ejemplo 200.200 dice docientos docientos y lo mismo pasa cuando esta en 300.000, 400.000 etc.

Claudio Fritz
Claudio Fritz
12 años atrás

Hola

Buenísimo tu programa, había buscado algo así desde hace mucho tiempo , tu tutorial muy claro y practico me resulto a la primera

Saludos desde Chile
PD, cambie el peso Chileno y saque el 000/100 del final

Antonio
Antonio
12 años atrás

Excelente herramienta, te agradezco por tu apoyo con la implementación del complemento, muy al detalle te felicito y agradezco.

Margaret
Margaret
3 años atrás

muchas si mesirvio bastante

Orlando Gonzalez
Orlando Gonzalez
2 años atrás

Hola francisco, tengo el mismo complemento pero codificaco de otra forma, no es de mi autoria, y quisiera poder hacer esos ajustes al que yo tengo, este se le puden modificar las instrucciones a conveniencia no se como pudiera comunicarme contigo, te escribo desde Colombia