Macro para convertir serie en fecha en Excel

Twittear este post

 Compartir en Facebook

En base a una consulta en los foros de TODOEXCEL donde solicitan que una serie de números, por ejemplo “140382” se convirtiera a formato de fecha “14-mar-11”, aprovecho para compartir la macro que realiza tal función.

Código:

'---------------------------------------------------------------------------------------
' Procedure : EXCELeINFOConvertirSerieEnFecha
' Author    : Sergio A Campos H
' Date      : 13/04/2011
' Purpose   : Convertir serie en fecha
'---------------------------------------------------------------------------------------
'
Sub EXCELeINFOConvertirSerieEnFecha()
    Dim Celda, Dia, Mes, Anio, FechaCompleta, Cuenta
    Application.Calculation = xlCalculationManual
    Application.StatusBar = "Convirtiendo ..."
    Cuenta = 0
    For Each Celda In Selection
        If Len(Celda.Value) = 5 Then
            Fecha = "0" & Celda.Value
        Else
            Fecha = Celda.Value
            If Len(Celda.Value) < 5 Then
                Cuenta = Cuenta + 1
            End If
        End If
        Anio = Right(Fecha, 2)
        Mes = Mid(Fecha, 3, 2)
        Dia = Left(Fecha, 2)
        Unidos = Mes & "-" & Dia & "-" & Anio
        FechaCompleta = WorksheetFunction.Text(Unidos, "dd-mmm-yyy")
        Celda.Value = FechaCompleta
    Next Celda
    Application.Calculation = xlCalculationAutomatic
    Application.StatusBar = False
    MsgBox Cuenta & " celdas con longitud menor a 5", vbInformation
End Sub

You may also like...

6 Responses

  1. Galileogali says:

    =TEXTO(A1;”00-00-0000″)+0

    • Es una buena opción para pocas celdas o dichas celdas en una misma columna, pero el aporte es cuando elegimos el rango y hacerlo de manera rápida. El usuario de los foros lo quería para 6000 celdas.

  2. Jose says:

    Sergio como puedo converir el siguiente valor 2011080100000 en un formato de fecha, es cierto que en la opcion de los formatos de celdas me permite realizar la conversión a numero y puedo reducir la posición de decimales.

    Agradezco tus comentarios.

Leave a Reply

Your email address will not be published. Required fields are marked *