Como poner hora actual al abrir una hoja en excel

"para Dante Amor"

Hola me gustaría que al abrir mi documento en excel se ponga solo la hora en una casilla automáticamente y no se pueda modificar.

2 Respuestas

Respuesta
1

H o l a : Pon el siguiente código en los eventos de tu libro

Private Sub Workbook_Open()
'Por.Dante Amor
    Sheets("Reporte").Unprotect "abc"
    Sheets("Reporte").Range("L10").Value = Time
    Sheets("Reporte").Protect "abc"
End Sub

Instrucciones para poner la macro en los eventos ThisWorkbook

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a ThisWorkbook
  4. En el panel del lado derecho copia la macro

Para que la celda L10, no pueda ser modificada, la hoja tiene que estar protegida. Como podrás ver en la macro, estoy protegiendo la hoja con el password "abc".

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias
Respuesta

.28/07/16

Buenas, Sary

Notando que pasó mucho tiempo y sin perjuicio de que el Sr. Dante Amor te envíe una de sus habituales excelentes soluciones, te propongo una opción para lo que solicitas.

Vamos por partes:

La instrucción para colocar una fecha en una celda es algo así como:

CeldaFecha = "A1" 'Celda donde deberá estamparse la fecha
Range(CeldaFecha).Value = Now
Range(CeldaFecha).NumberFormat = "dd/mm/yyyy"

Ahora bien, para que eso pase cada vez que se abra tu archivo, tales instrucciones deben colocarse en un elemento específico de VBA llamado "ThisWorkbook".

Presiona Alt + F11 para acceder al entorno de VBA y búscala a la izquierda donde marca la siguiente imagen:

Allí pega aquellas instrucciones:
Private Sub Workbook_Open()
CeldaFecha = "A1" 'Celda donde deberá estamparse la fecha
HojaFecha = "Hoja1" 'Hoja donde va la celda con la fecha
Range(CeldaFecha).Value = Now
Range(CeldaFecha).NumberFormat = "dd/mm/yyyy"
End Sub

Bien, hasta aquí cada vez que se abra el archivo la fecha quedará escrita en la celda y hoja que le indiques en cada variable.

Adicionalmente, puedes proteger -con una clave- la hoja para que no se pueda modificar.

En tal caso, la siguiente macro puede asegurarse de que la hoja quede protegida luego de colocar esa fecha:

Private Sub Workbook_Open()
CeldaFecha = "A1" 'Celda donde deberá estamparse la fecha
HojaFecha = "Hoja1" 'Hoja donde va la celda con la fecha
LaPass = "Mezcal"
With Sheets(HojaFecha)
    .Unprotect Password:=LaPass
    .Range(CeldaFecha).Value = Now
    .Range(CeldaFecha).NumberFormat = "dd/mm/yyyy"
    .Protect Password:=LaPass
End With
End Sub

OK, Sary, espero que te sea de utilidad y que no te haya molestado que tomara esta pregunta.

Saludos

Fernando

..

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas