Elsa matilde ¡ Ayuda !

Hola elsa necesito de tu ayuda, tengo un formato de historia clínica y necesito que a medida que se vaya llenando las celdas, estas se vayan bloqueando, pero n o de una vez si no después de 10 minutos o el tiempo que yo elija. Como podría instalar una macro en la hoja para que me haga esto... Tengo un ejemplo. El problema es que para cada celda va un bloque completo de código.. Y en la historia hay muchas celdas. Como haría para que me quede más corta y funcionando en la hoja1 por ejemplo... Ademas si quiro cambiar un dato debo saber la contraseña de la hoja.. Esto es para proteger la información y que no me vayan a cambiar los datos.. De antemano gracias por la ayuda prestada, si necesitas trabajar sobre algo tengo dos ejemplos. Pero lo que no se es como acomodarlo a mi necesidad.
[email protected]

1 respuesta

Respuesta
1
Me tome la libertad de contestar tu pregunta. Pega este código en un modulo:
Option Explicit
Dim ClockCell As String
Dim timer_enabled As Boolean
Dim timer_interval As Double
Dim segundero, minutero
Dim hora As String
Sub mar()
acumulador = 1
Sub cmd_TimerOn()
Dim interval As Double
interval = 1.15740740740741E-05
Call timer_Start(interval)
End Sub
Sub Timer()
segundero = segundero + 1
If segundero = 60 Then
minutero = minutero + 1
'Aqui le das la cantidad de minutos en que quieres q se active la proteccion a la hoja1 si deseas puedes variar el tiempo
If minutero = 10 Then
Worksheets("hoja1").Protect
minutero = 0
End If
segundero = 0
End If
End Sub
Sub timer_OnTimer()
Call Timer
If timer_enabled Then Call timer_Start
End Sub
Sub timer_Start(Optional ByVal interval As Double)
If interval > 0 Then timer_interval = interval
timer_enabled = True
If timer_interval > 0 Then Application.OnTime (Now + timer_interval), "Timer_OnTimer"
End Sub
Sub timer_Stop()
timer_enabled = False
End Sub
Sub Formulario()
Load UserForm1
UserForm1.Show
End Sub
Luego en la Hoja1 en la propiedad: Private Sub Worksheet_Activate(), haces referencia a: Sub cmd_TimerOn(), y listo tu documento de excel se bloqueara cada 10 minutos. Bueno espero haberte sido de ayuda. Saludos y no olvides cerrar la pregunta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas