Lori quiere que el lado derecho del pie de página de su hoja de trabajo incluya la fecha en que se guardó por última vez el libro. Cada vez que intenta crear una fórmula para hacer esto, Excel muestra un mensaje de error que indica que «la cadena es demasiado larga» y que necesita eliminar algunos caracteres. No está segura de entender por qué sucede esto o cómo puede obtener la fecha que quiere en el pie de página.

No existe una fórmula real que pueda poner la última fecha guardada en un pie de página.

Excel no tiene forma (a diferencia de Word) de poner este bocado de información allí.

Hay una forma de hacerlo, pero la solución requiere el uso de una macro. La razón es porque está accediendo a información del sistema, información fuera del propio Excel, y esa información solo se puede recuperar utilizando un lenguaje de programación como VBA.

Un enfoque consiste en agregar código que se ejecute siempre que se guarde un libro.

El código actualizaría el pie de página deseado con la fecha actual:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, _   Cancel As Boolean)



ActiveWorksheet.PageSetup.RightFooter = _       "Last Saved: " & Format(Date, "mmmm d, yyyy")

End Sub

Esta macro, que debe almacenarse en el objeto ThisWorkbook para el libro que desea afectar, actualiza el pie de página de la hoja de trabajo actualmente activa. Si desea afectar todas las hojas de trabajo en un libro de trabajo, entonces es necesario un pequeño cambio en la macro:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, _   Cancel As Boolean)

Dim sht As Worksheet

For Each sht In Sheets         sht.PageSetup.RightFooter = _           "Last Saved: " & Format(Date, "mmmm d, yyyy")

Next End Sub

Si hoy es 12 de diciembre de 2011, después de ejecutar la macro (que se hace automáticamente al guardar), los pies de página correctos se establecerán en «Último guardado: 12 de diciembre de 2011».

También puede confiar en la fecha de guardado del archivo almacenada en las propiedades integradas de Excel. La forma en que pones esa fecha en el pie de página es la siguiente:

Sub RightFooterLastSaved()

ActiveSheet.PageSetup.RightFooter = _        ActiveWorkbook.BuiltinDocumentProperties(12)

End Sub

El inconveniente de esta macro es que debe recordar ejecutarla periódicamente, por lo que no es tan automática como los enfoques anteriores. Sin embargo, puede colocar la línea única en el corazón de la macro en el controlador de eventos Workbook_BeforePrint.

Hay otro enfoque que puede utilizar. Este implica solicitar a Windows la fecha y hora reales en que se guardó un archivo.

Private Sub Workbook_Open()

Dim sTemp As String     Dim sht As Worksheet

sTemp = FileDateTime(ActiveWorkbook.FullName)

sTemp = "Last Saved: " & sTemp     For Each sht In Sheets         sht.PageSetup.RightFooter = sTemp     Next sht End Sub

Esta macro está diseñada para ejecutarse siempre que se abre un libro por primera vez; se guarda como el procedimiento Workbook_Open del objeto ThisWorkbook. El caballo de batalla de la macro es la línea que llama a la función FileDateTime.

Esta función se puede utilizar para determinar la fecha y la hora en que se guardó cualquier archivo. Requiere un nombre de ruta completo de un archivo, que es proporcionado por la propiedad FullName del objeto ActiveWorkbook. Esta fecha y hora se colocan en el pie de página derecho de todas las hojas de trabajo del libro.

Recuerde también que el límite de lo que puede colocar en cada sección del encabezado o pie de página es de aproximadamente 250 caracteres. Por lo tanto, si ajusta las macros para agregar más información a la parte derecha del pie de página, asegúrese de que no sume tantos caracteres, o puede tener problemas con la macro.

_Nota: _

Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios ExcelTips), he preparado una página especial que incluye información útil.

link: / excelribbon-ExcelTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador].

ExcelTips es su fuente de formación rentable en Microsoft Excel.

Este consejo (2190) se aplica a Microsoft Excel 97, 2000, 2002 y 2003. Puede encontrar una versión de este consejo para la interfaz de cinta de Excel (Excel 2007 y posterior) aquí:

link: / excelribbon-Last_Saved_Date_in_a_Footer [Última fecha guardada en un pie de página].