Escribe la siguiente función en una celda, cambia B5 por la celda que tiene la fecha.
=fechaletra(B5)
Esta es la función:
Function fechaletra(fec As Date) As String
'Por.Dante Amor
dia = num(Day(fec))
mes = nombremes(Month(fec))
ano = num(Year(fec))
fechaletra = dia & " de " & mes & " de " & ano
End Function
'
Function num(fec As Long) As String
'Por.Dante Amor
Unidades = Array("", "Uno", "Dos", "Tres", "Cuatro", "Cinco", "Seis", "Siete", "Ocho", "Nueve", "Diez", "Once", "Doce", "Trece", "Catorce", "Quince", "Dieciséis", "Diecisiete", "Dieciocho", "Diecinueve", "Veinte", "Veintiuno", "Veintidos", "Veintitres", "Veinticuatro", "Veinticinco", "Veintiseis", "Veintisiete", "Veintiocho", "Veintinueve")
Decenas = Array("", "Diez", "Veinte", "Treinta", "Cuarenta", "Cincuenta", "Sesenta", "Setenta", "Ochenta", "Noventa", "Cien")
Centenas = Array("", "Ciento", "Doscientos", "Trescientos", "Cuatrocientos", "Quinientos", "Seiscientos", "Setecientos", "Ochocientos", "Novecientos")
'
Select Case fec
Case 0: r = "Cero"
Case 1 To 29: r = Unidades(fec)
Case 30 To 100: r = Decenas(fec \ 10) + IIf(fec Mod 10 <> 0, " y " + num(fec Mod 10), "")
Case 101 To 999: r = Centenas(fec \ 100) + IIf(fec Mod 100 <> 0, " " + num(fec Mod 100), "")
Case 1000 To 1999: r = "Mil" + IIf(fec Mod 1000 <> 0, " " + num(fec Mod 1000), "")
Case 2000 To 999999: r = num(fec \ 1000) + " Mil" + IIf(fec Mod 1000 <> 0, " " + num(fec Mod 1000), "")
Case 1000000 To 1999999: r = "Un Millón" + IIf(fec Mod 1000000 <> 0, " " + num(fec Mod 1000000), "")
Case 2000000 To 1999999999: r = num(fec \ 1000000) + " Millones" + IIf(fec Mod 1000000 <> 0, " " + num(fec Mod 1000000), "")
End Select
num = r
End Function
'
Function nombremes(n)
'Por.Dante Amor
Meses = Array("", "Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre")
nombremes = meses(n)
End Function
Sigue las Instrucciones para una Función
- Abre tu libro de excel
- Para abrir VBa y poder pegar la función, Presiona Alt + F11
- En el menú elige Insertar / Módulo
- En el panel del lado derecho copia la función
- En cualquier celda utiliza la función, como cualquier otra función de excel
Saludos. Dante Amor