Pregunta

Estoy creando una plantilla de Excel (*.xlt) para un usuario aquí, y una de las cosas que quiero hacer es que inserte la fecha actual cuando se crea un nuevo documento (es decir, cuando hacen doble clic en el archivo en Explorador de Windows).¿Cómo hago esto?

Actualizar: Debería haber agregado que preferiría no usar ningún vba (macro).Si esa es la única opción, que así sea, pero realmente me gustaría evitar obligar a mi usuario a recordar hacer clic en algún botón "permitir contenido macro".

¿Fue útil?

Solución

Puede usar la función de hoja de trabajo =HOY(), pero obviamente esto se actualizará a la fecha actual cada vez que se vuelva a calcular el libro.

El único otro método que se me ocurre es, como dijo 1729, codificar el evento Workbook_Open:

Private Sub Workbook_Open()
    ThisWorkbook.Worksheets("Sheet1").Range("A1").Value = Date
End Sub

Puede reducir el problema de necesitar que el usuario acepte macros cada vez firmando digitalmente la plantilla (en VBA IDE Tools | Firma digital...) y seleccionando un certificado digital; sin embargo, necesitará obtener un certificado de una certificación comercial. autoridad (ver http://msdn.microsoft.com/en-us/library/ms995347.aspx).El usuario deberá seleccionar confiar siempre en este certificado la primera vez que ejecute la plantilla, pero a partir de entonces no se le volverá a preguntar.

Otros consejos

Puede editar la plantilla predeterminada para Excel:

Hay un archivo llamado Book.xlt en el XLSTART directorio, normalmente ubicado en C:\Program Files\Microsoft Office\Office\XLStart\

Debería poder agregar una macro llamada Workbook_Open

Private Sub Workbook_Open()
    If ActiveWorkBook.Sheets(1).Range("A1") = "" Then
        ActiveWorkBook.Sheets(1).Range("A1") = Now
    End If
End Sub

Mi VBA está un poco oxidado, pero es posible que algo como esto funcione.

Para evitar VBA, y si cree que sus usuarios podrían seguir las instrucciones, puede pedirles que copien la fecha y luego peguen valores especiales-> para establecer la fecha de modo que no cambie en el futuro.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top