
Iniciado por
Antonio
...Requiero que este consecutivo se reinicie partiendo otra vez desde 1 cada vez que el Sistema marque un día diferente o que supere las 12:00 a.m.. Es decir si el contador marca 25 el día 12 de marzo de 2010, cuando sea13 de marzo de 2010 o sean las 12:00:01 a.m., el contador empiece nuevamente en 1...
Hola Antonio,
algo así podría funcionar, lo he comentado ampliamente para que lo entiendas y te sea fácil adaptarlo:
Código:
Sub Prueba()
'Evita que el código se detenga si hay errorres
On Error Resume Next
'Evalua la fecha almacenda en "Fecha_" y la compara con la fecha del sistema
'Si no hay fecha almacenada se produce un error y continúa con la rutina
If [Fecha_] <> Date Then
'Si no coinciden la fecha almacenada en Fecha_ y la fecha del sistema o
'si se ha producido un error, agrega un nuevo nombre
'(o cambia el valor del nombre ya existente)
'llamado Fecha_ y le asigna la fecha del sistema
Names.Add "Fecha_", Date, False
'Mensaje indicando que se ha guardado la fecha del sistema
'y que se reiniciará el contador
MsgBox "Fecha: " & Date & vbLf & "Se reiniciará el contador."
'Reinicia el contador asignándoles a la celda C2 el valor de 1
Range("c2") = 1
Else
'Si coinciden la fecha almacenada en Fecha_ y la fecha del sistema
'se incrementa en 1 el valor actual en C2
Range("c2") = Range("c2") + 1
End If
End Sub
Revisa el adjunto, tiene un contador que incrementará cada vez que ejecutes la macro y cuando cambie la fecha, el contador se reiniciará desde 1.
Has unas pruebas a ver cómo te funciona y si puedes adaptarlo, cualquier cosa acá estamos pendientes.
Marcadores