Por que falla este código
Hola muy buenas. Paso a explicaros mi caso, no sin antes deciros que no soy experto, así pues si puede ser cuando me deis alguna aclaración que sea lo más legible para mi, gracias.
Tengo este código:
Private Sub Form_Timer() Static color As Boolean RELOJDIGITAL.Caption = Time() If color Then RELOJDIGITAL.ForeColor = RGB(0, 255, 255) Else RELOJDIGITAL.ForeColor = RGB(0, 255, 0) End If color = Not color End Sub
el cual en una base de datos realizada con access 2003 va a las mil maravillas. Recientemente me pase a access 2007, y realizo lo que he podido ver y requemirar por la red de como hacerlo, y esto es lo que me dicen la mayoría de casos consultados:
Primer caso:
Hacerlo con una etiqueta a la que le llamamos lblHora. En el formulario, en la propiedad Al intervalo del cronómetro escribimos 1000. En el código de evento AlCronómetro del formulario escribimos me.lblHora.caption=Time. Seguidamente en el formulario, en la propiedad Al intervalo del cronómetro escribimos 1000. En el código de evento AlCronómetro del formulario escribimos me.lblHora.caption=Time.
Lo primero que me dice que esta etiqueta es nueva y no esta asociada a ningún control, y cuando le doy a la vista formulario, y me lanza el mensaje de Microsoft Office Access no encuentra el objeto "me".
Segundo caso:
Hacerlo con una etiqueta y darle por nombre "Reloj", (no se si son necesarias o no las comillas, lo he echo con y sin ellas y el resultado es el mismo) Seguidamente acceder a las propiedades del formulario y en el evento "Al cronómetro" escribo lo siguiente, pinchando en el cuadro que tiene los tres puntitos y elijo el generador de código y pongo esto:
Private Sub Form_Timer()
Static color As Boolean
Static color As Boolean
If color Then
RELOJDIGITAL.ForeColor = RGB(0, 255, 255)
Else
RELOJDIGITAL.ForeColor = RGB(0, 255, 0)
End If
color = Not color
End Sub
Una vez que esta escrito le doy a guardar en la base de datos.
Una vez hecho esto en la propiedad "Intervalo del cronómetro" establece su valor a 1000, con esto se actualizará el reloj cada minuto.
Cuando vuelvo a ponerlo en vista formulario me dice:
La expresión "Al cronometro" que ha especificado como valor de la propiedad de evento produjo el error Declaración duplicada en el ámbito actual.
Ya me explicaran como he de hacerlo, para que por lo menos me salga como lo tenia en la base creada con Access 2003.
Esperando su respuesta atentamente:
Óscar