Temporalizador para Excel

Iniciado por Akuma san, 4 Diciembre 2006, 08:45 AM

0 Miembros y 1 Visitante están viendo este tema.

Akuma san

Necesito armar una planilla de Excel que tenga un temporizador que a los diez minutos de anotar el primer dato de la matriz, cancele la posibilidad de seguir anotando cambios, es decir que me de solo diez minutos para hacer lo que tengo que hacer: cambiar algunas cosas por otras.
¿alguien me puede dar una mano?
Existe alguna función "reloj", o debo armar una macro con VB?
¿cómo armar un temporizador con las "fx" de Excel? :huh:


Akuma san

CeLaYa

mira puedes hacer una macro y poner este procedimiento, le tienes que pasar el tiempo en segundos



Private Sub Espera(Segundos As Single)
  Dim ComienzoSeg As Single
  Dim FinSeg As Single
  ComienzoSeg = Timer
  FinSeg = ComienzoSeg + Segundos
  Do While FinSeg > Timer
      DoEvents
      If ComienzoSeg > Timer Then
          FinSeg = FinSeg - 24 * 60 * 60
      End If
  Loop
 
  Hoja1.Protect
 
End Sub



lo malo de esto esque si al abrir el archivo xls le dicen que no ejecute macros ya no va a funcionar, pero espero y te sirva de algo
"La soledad es el elemento de los grandes talentos".
Cristina de Suecia (1626-1689) Reina de Suecia.

Akuma san

Gracias CeLaYa.
Voy a probar tu rutina.
Pero antes... ¿dónde defino los diez minutos (600 s), es decir cual es la variable? y... ¿dónde queda establecido a partir de cuando empiezan a correr los 600 segundos? o así como me lo pasastes comienza con el primer evento que cambie?
Verás que mi conocimiento en el tema es menos que mínimo. :rolleyes:
Un abrazo.

Akuma san

CeLaYa

si abres el editor de VB que trae el Excel veras un objeto que se llama "thisWorkBook", el WorkBooK trae un evento el Workbook_Open() puedes usarlo para mandar llamar la funcion


Private Sub Workbook_Open()
   Espera 600
End Sub


con esto cuenta 10 min a partir de que abres el libro, checa los eventos de las hojas para que veas si puedes usar alguno, Existe el Change que te detecta cuando algo cambia en la hoja ese a lo mejor tambien te puede servir
"La soledad es el elemento de los grandes talentos".
Cristina de Suecia (1626-1689) Reina de Suecia.

LeandroA

puedes usar el api del SetTimer  el problema es que no tienes un hwnd pues lo que puedes hacer es usar el api findwindow con el titulo del la la ventana de excel

tengo un ejemplo pero como no tengo excel instalado no te lo puedo pasar