Cuando le doy ActiveWorkbook.Save no me respeta el formato de fecha dd/mm/yyyy

Tengo este macro

Sub fff()

'

' Fff Macro

' X Elsamatilde

'

' Acceso directo: CTRL+q

'

    Columns("C:C").Select

    Selection.Delete Shift:=xlToLeft

    Rows("1:1").Select

    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove

    Range("A1").Select

    ActiveCell.FormulaR1C1 = "Lon"

    Range("B1").Select

    ActiveCell.FormulaR1C1 = "Lat"

    Range("C1").Select

    ActiveCell.FormulaR1C1 = "Pre"

    Range("D1").Select

    ActiveCell.FormulaR1C1 = "Est"

    Range("E1").Select

    ActiveCell.FormulaR1C1 = "Fecha"

    Range("E2").Select

    'obtener la parte de la fecha

libro = Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) 'se le quita la extensión

fechax = Right(libro, 6)

fechaCol = Left(fechax, 2) & "/" & Mid(fechax, 3, 2) & "/20" & Right(fechax, 2)

'se obtiene la última fila con datos según col A  (ajustar)

finx = Range("A" & Rows.Count).End(xlUp).Row

'se coloca la fecha en col F controlando posible error de fecha invalida

On Error Resume Next

Range("E2:E" & finx) = CDate(fechaCol)

On Error GoTo 0

'ActiveWorkbook.Save

End Sub

Si activeworkbook está activado me guarda la columna E de fecha con el formato dd/mm/yyyy pero al abrirlo me sale mm/dd/yyyy/, sí lo guardo de manera manual lo guarda y me respeta el formato con el que se guardo el archivo

1 Respuesta

Respuesta
2

Difícilmente la primer parte de la macro sea mía jajaja. Quizás solo haya dejado instrucciones ue ya estaban.

Así te evitas varias líneas:

Range("A1") = "Lon"
Range("B1") = "Lat"
Range("C1") = "Pre"
Range("D1") = "Est"
Range("E1") = "Fecha"
'más ejemplos para mejorar los códigos los encontrarás en video 11 de mi canal.

Con respecto a la fecha... no recuerdo tu caso... el libro ya tenía una fecha como parte del nombre? Podrías decirme cómo se llama tu libro?

Sdos.

Elsa

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas