hola a todos
Bueno tengo este codigo
if Cstr(time)=>"23:00:00" and Cstr(time)<="8:00:00" then
shell ("ShutDown -s")
end if
bueno esto lo que hace es apagar el pc en sierta hora hasta las 8 am. (funeciona en hora del pc en formato militar). pero desde hace 2 dias que esta vaina no me funciona, a veces apaga el sistema a caulquier hora, o a veces no hace nada. si alguien sabe la causa por fa aganmelo saber.
El problema esta por que pasa de las 12 de la noche.
Entonces, la comparacion no la hace bien, tendrias que hacerlo comparando como si fueran dos dias, uno de 23 hasta las 12 de la noxe y otro desde las doce de la noche asta las 8 de la mañana
Otra cosa, es que conviertes a String, y comparas cadenas, eso tp lo hace bien, por que tienes que comparar tiempo y no cadena.
Para indicar poner en visual hora y dia se pone con # y compara directamente. Este codigo me ha funcionado.
If (Time >= #11:00:00 PM# And Time <= #11:59:59 PM#) _
Or (Time >= #12:00:00 AM# And Time <= #8:00:00 AM#) Then
shell ("ShutDown -s")
End If
Yo que tu pondria un mensaje para no proba apagando el pc.
y cuando veas que funcion ya pones el shell.
If (Time >= #11:00:00 PM# And Time <= #11:59:59 PM#) _
Or (Time >= #12:00:00 AM# And Time <= #8:00:00 AM#) Then
MsgBox('Apagar')
' shell ("ShutDown -s")
End If
Saludos
No uses strings, usa variables datetime y si lo que queres preguntar es el intervalo entre las 23 y las 8, es OR en lugar de AND:
if time>=timevalue("23:00") OR time<=timevalue("8:00") then
shell ("ShutDown -s")
end if
Cita de: Ironhorse en 26 Agosto 2006, 00:11 AM
No uses strings, usa variables datetime y si lo que queres preguntar es el intervalo entre las 23 y las 8, es OR en lugar de AND:
if time>=timevalue("23:00") OR time<=timevalue("8:00") then
shell ("ShutDown -s")
end if
si lo coloco como OR me genera un apagado desde las ocho de la noche o a las 11
Hey WUepe gracias