Formula q cambie la cantidad d numero a letra [Resuelto/Cerrado]

kiribati - 7 jul 2009 a las 19:04 - Última respuesta:  elknar1
- 6 oct 2017 a las 19:42
Hola,

sabes quisiera saber como se le hace con formula que cuando yo escbriba con numero una cantidad me la transforme a letra
Ver más 

25 respuestas

+528
Vota
12
Va un codigo que funciona bastante bien; pegalo en un modulo de excel y despues llama la funcion

'Funcion para convertir los numeros a caracteres.


Function Num_texto(Numero)
Dim Texto
Dim Millones
Dim Miles
Dim Cientos
Dim Decimales
Dim Cadena
Dim CadMillones
Dim CadMiles
Dim CadCientos
Texto = Numero
Texto = FormatNumber(Texto, 2)
Texto = Right(Space(14) & Texto, 14)
Millones = Mid(Texto, 1, 3)
Miles = Mid(Texto, 5, 3)
Cientos = Mid(Texto, 9, 3)
Decimales = Mid(Texto, 13, 2)
CadMillones = ConvierteCifra(Millones, 1)
CadMiles = ConvierteCifra(Miles, 1)
CadCientos = ConvierteCifra(Cientos, 0)
If Trim(CadMillones) > "" Then
If Trim(CadMillones) = "UN" Then
Cadena = CadMillones & " MILLON"
Else
Cadena = CadMillones & " MILLONES"
End If
End If
If Trim(CadMiles) > "" Then
Cadena = Cadena & " " & CadMiles & " MIL"
End If
If Trim(CadMiles & CadCientos) = "UN" Then
Cadena = Cadena & "UNO CON " & Decimales & "/100"
Else
If Miles & Cientos = "000000" Then
Cadena = Cadena & " " & Trim(CadCientos) & " PESOS CON " & Decimales & " CTVOS"
Else
Cadena = Cadena & " " & Trim(CadCientos) & " PESOS CON " & Decimales & " CTVOS"
End If
End If
Num_texto = Trim(Cadena)
End Function

Function ConvierteCifra(Texto, SW)
Dim Centena
Dim Decena
Dim Unidad
Dim txtCentena
Dim txtDecena
Dim txtUnidad
Centena = Mid(Texto, 1, 1)
Decena = Mid(Texto, 2, 1)
Unidad = Mid(Texto, 3, 1)
Select Case Centena
Case "1"
txtCentena = "CIEN"
If Decena & Unidad <> "00" Then
txtCentena = "CIENTO"
End If
Case "2"
txtCentena = "DOSCIENTOS"
Case "3"
txtCentena = "TRESCIENTOS"
Case "4"
txtCentena = "CUATROCIENTOS"
Case "5"
txtCentena = "QUINIENTOS"
Case "6"
txtCentena = "SEISCIENTOS"
Case "7"
txtCentena = "SETECIENTOS"
Case "8"
txtCentena = "OCHOCIENTOS"
Case "9"
txtCentena = "NOVECIENTOS"
End Select

Select Case Decena
Case "1"
txtDecena = "DIEZ"
Select Case Unidad
Case "1"
txtDecena = "ONCE"
Case "2"
txtDecena = "DOCE"
Case "3"
txtDecena = "TRECE"
Case "4"
txtDecena = "CATORCE"
Case "5"
txtDecena = "QUINCE"
Case "6"
txtDecena = "DIECISEIS"
Case "7"
txtDecena = "DIECISIETE"
Case "8"
txtDecena = "DIECIOCHO"
Case "9"
txtDecena = "DIECINUEVE"
End Select
Case "2"
txtDecena = "VEINTE"
If Unidad <> "0" Then
txtDecena = "VEINTI"
End If
Case "3"
txtDecena = "TREINTA"
If Unidad <> "0" Then
txtDecena = "TREINTA Y "
End If
Case "4"
txtDecena = "CUARENTA"
If Unidad <> "0" Then
txtDecena = "CUARENTA Y "
End If
Case "5"
txtDecena = "CINCUENTA"
If Unidad <> "0" Then
txtDecena = "CINCUENTA Y "
End If
Case "6"
txtDecena = "SESENTA"
If Unidad <> "0" Then
txtDecena = "SESENTA Y "
End If
Case "7"
txtDecena = "SETENTA"
If Unidad <> "0" Then
txtDecena = "SETENTA Y "
End If
Case "8"
txtDecena = "OCHENTA"
If Unidad <> "0" Then
txtDecena = "OCHENTA Y "
End If
Case "9"
txtDecena = "NOVENTA"
If Unidad <> "0" Then
txtDecena = "NOVENTA Y "
End If
End Select

If Decena <> "1" Then
Select Case Unidad
Case "1"
If SW Then
txtUnidad = "UN"
Else
txtUnidad = "UNO"
End If
Case "2"
txtUnidad = "DOS"
Case "3"
txtUnidad = "TRES"
Case "4"
txtUnidad = "CUATRO"
Case "5"
txtUnidad = "CINCO"
Case "6"
txtUnidad = "SEIS"
Case "7"
txtUnidad = "SIETE"
Case "8"
txtUnidad = "OCHO"
Case "9"
txtUnidad = "NUEVE"
End Select
End If
ConvierteCifra = txtCentena & " " & txtDecena & txtUnidad
End Function
¿Te sirvió esta respuesta?  
Gracias brotehr me sirvió de mucho ahora todo es más rápido, te invito a que compartas con migo trucos: jalpe87@hotmail.com, saludos
Muchas gracias carnalito me sirvio de mucho esta informaciòn =)..
excelente!! Funcionó super bien!!!
+81
Vota
convertidor de numeroa aletras
+12
Vota
1
¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿QUE??????????????????

A MANO????????????????

SOBERANA ESTUPIDEZ; POR SU PUESTO QUE SE PUEDE, PERO NECESITAS SABER PROGRAMAR EN CMOS VISUAL BASIC Y DESPUES COLOCAR LA FORMULA
PhenomII 55 Publicaciones miércoles, 8 de julio de 2009Fecha de inscripción martes, 2 de marzo de 2010 Última intervención - 8 oct 2009 a las 22:36
En visualbasic se puede, en cualquier lenguaje tambien pero en EXCEL lo que respecta acá NO
+12
Vota
4
Excelente tu explicación!!! me sirvió al 100% y me ahorró un montón de trabajo... Gracias...
Hola Gabo:

Es gratificante poder compartir un poco de nuestros conocimientos.

Saludos.

Teresa de Jesús.
ALGUIEN ME PUEDE APOYAR PARA REALIZARLO PASO A PASO YA QUE NO HE PODIDO HACER EFECTIVO EL EJERCICIO
Ve a la barra de menús, en herramientas en la opción de macro, y en editor de visual basic, te pocisionas en el nombre de tu archivo, enseguida insertar módulo, donde dice módulo 1, en el área de trabajo a tu izquierda pegas la fórmula. Guarda los cambios y cierras, te vas a tu hoja de calculo y te vas a la opción de insertar función, =NUMERO_TEXTO(aquí va la celda en dode pondrás la cantidad en números por ejemplo: A1)
Y SI ES WINDOW XP?? NO EWNCUENTRO EL EDITOR DE VB
PhenomII 55 Publicaciones miércoles, 8 de julio de 2009Fecha de inscripción martes, 2 de marzo de 2010 Última intervención - 8 jul 2009 a las 19:05
+9
Vota
Funcion no hay, se tiene que hacer casi a mano sabes?
Kimbara 20 Publicaciones martes, 7 de julio de 2009Fecha de inscripción miércoles, 15 de julio de 2009 Última intervención - 7 jul 2009 a las 19:13
+8
Vota
1
Para cambiarle la letra de unidad a un dispositivo en Windows XP, tenemos que iniciar la consola de administración de sistema
Click derecho sobre Mi PC y seleccionando Administrar.
Una vez allí, seleccionaremos el Administrador de discos y haremos clic con el ratón derecho sobre el dispositivo al que queramos cambiarle la letra de unidad, seleccionando la opción Cambiar letra de unidad y ruta y especificando la nueva letra de unidad que queramos darle.
no es sobre eso es k en excel cuando yo escriba una cantidad por ejemplo 125 en una celda al dar yo enter me la escriba en letra ciento veinte y cienco eso es lo k necesito saber pero de todos modos gracias y si me puedes ayudar seria genial