Ejecutar macro automaticamente a una hora.

06/06/2006 - 21:46 por martin | Informe spam
Hola a todos,

Tengo una macro que consiste en copiar y pegar una columna dentro de la
misma hoja. La ejecuto con un boton. Lo que necesito es que se ejecute
todos los dias a las 3 de la tarde automaticamente. Habitualmente tengo ese
libro abierto, pero hay dias que a esa hora no estoy delante de el para
apretar el botonico.

¿Como puedo hacerlo?


Muchas gracias por adelantado.



Salu2


Martin.

Preguntas similare

Leer las respuestas

#1 KL
06/06/2006 - 22:21 | Informe spam
Hola martin,

Mira a ver si te vale alguna de las siguientes conversaciones: http://tinyurl.com/hy2cu

Saludos,
KL


"martin" wrote in message news:e64m1m$v3j$

Hola a todos,

Tengo una macro que consiste en copiar y pegar una columna dentro de la
misma hoja. La ejecuto con un boton. Lo que necesito es que se ejecute
todos los dias a las 3 de la tarde automaticamente. Habitualmente tengo ese
libro abierto, pero hay dias que a esa hora no estoy delante de el para
apretar el botonico.

¿Como puedo hacerlo?


Muchas gracias por adelantado.



Salu2


Martin.
Respuesta Responder a este mensaje
#2 martin
07/06/2006 - 00:37 | Informe spam
Gracias KL, siempre tan diligente en esta ayuda que no tiene precio.
Bueno, despues de dar muchas vueltas he avanzado algo. Me ha ayudado
sobre todo esta direccion, a la que he accedido desde una consulta del
grupo en ingles:
http://www.ozgrid.com/Excel/run-macro-on-time.htm
Y la ayuda del Visual Basic de excel.
No obstante tengo un problema. Si programo para una hora determinada,
para "activar" el proceso tengo que ejecutar la macro previamente, si no
no pasa nada a la hora en cuestion :-((

Lo que he hecho es poner el el Thisworkbook lo siguiente:

Private Sub Workbook_Open()
Application.OnTime TimeValue("00:25:00"), "copypa"


End Sub


Copypa es mi macro.

Para que se autoejecute tengo que ejecutarla yo primero antes de la hora
especificada (borro la columna) y despues ya se ejecuta sola a las
00:25:00 Si no hago eso, a las 00:25:00 no pasA NADA ¿¿??

Alguna idea? mil gracias


Salu2.

Martin.




Hola martin,

Mira a ver si te vale alguna de las siguientes conversaciones:
http://tinyurl.com/hy2cu

Saludos,
KL


"martin" wrote in message
news:e64m1m$v3j$

Hola a todos,

Tengo una macro que consiste en copiar y pegar una columna dentro de


la
misma hoja. La ejecuto con un boton. Lo que necesito es que se
ejecute



todos los dias a las 3 de la tarde automaticamente. Habitualmente


tengo ese
libro abierto, pero hay dias que a esa hora no estoy delante de el


para
apretar el botonico.

¿Como puedo hacerlo?


Muchas gracias por adelantado.



Salu2


Martin.
Respuesta Responder a este mensaje
#3 Jordi-Albert
07/06/2006 - 01:44 | Informe spam
en el momento de abrir el libro miras la hora.
Si aún no son las 3 entonces ejecutas el OnTime
Si ya lo son entonces haces la copia de la columna

¿Que resulta que son las 4? tampoco pasa nada porque nadie ha abierto el
libro entre las 3 y ahora

"martin" escribió:

Gracias KL, siempre tan diligente en esta ayuda que no tiene precio.
Bueno, despues de dar muchas vueltas he avanzado algo. Me ha ayudado
sobre todo esta direccion, a la que he accedido desde una consulta del
grupo en ingles:
http://www.ozgrid.com/Excel/run-macro-on-time.htm
Y la ayuda del Visual Basic de excel.
No obstante tengo un problema. Si programo para una hora determinada,
para "activar" el proceso tengo que ejecutar la macro previamente, si no
no pasa nada a la hora en cuestion :-((

Lo que he hecho es poner el el Thisworkbook lo siguiente:

Private Sub Workbook_Open()
Application.OnTime TimeValue("00:25:00"), "copypa"


End Sub


Copypa es mi macro.

Para que se autoejecute tengo que ejecutarla yo primero antes de la hora
especificada (borro la columna) y despues ya se ejecuta sola a las
00:25:00 Si no hago eso, a las 00:25:00 no pasA NADA ¿¿??

Alguna idea? mil gracias


Salu2.

Martin.




> Hola martin,
>
> Mira a ver si te vale alguna de las siguientes conversaciones:
> http://tinyurl.com/hy2cu
>
> Saludos,
> KL
>
>
> "martin" wrote in message
> news:e64m1m$v3j$
>>
>> Hola a todos,
>>
>> Tengo una macro que consiste en copiar y pegar una columna dentro de
> la
>> misma hoja. La ejecuto con un boton. Lo que necesito es que se
>> ejecute
>
>> todos los dias a las 3 de la tarde automaticamente. Habitualmente
> tengo ese
>> libro abierto, pero hay dias que a esa hora no estoy delante de el
> para
>> apretar el botonico.
>>
>> ¿Como puedo hacerlo?
>>
>>
>> Muchas gracias por adelantado.
>>
>>
>>
>> Salu2
>>
>>
>> Martin.




Respuesta Responder a este mensaje
#4 KL
07/06/2006 - 13:15 | Informe spam
Hola martin,

Prueba incluir otra instruccion OnTime en el procedimiento "copypa", algo asi:

'--en el modulo ThisWorkbook--
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.OnTime Hora, "copypa", False
End Sub

'Si quieres que mientras Excel este abierto
'el libro se abra solo a la hora establecida
'y dispare el procedimiento, borra este
'procedimiento.
Private Sub Workbook_Open()
Application.OnTime Hora, "copypa"
End Sub
'--en el modulo ThisWorkbook--

'--en un modulo estandar--
Public Const Hora = #12:25:00 AM#

Sub copypa()
MsgBox "hola!"
Application.OnTime Hora, "copypa"
End Sub
'--en un modulo estandar--

Saludos,
KL


"martin" wrote in message news:e6502q$v8n$
Gracias KL, siempre tan diligente en esta ayuda que no tiene precio.
Bueno, despues de dar muchas vueltas he avanzado algo. Me ha ayudado
sobre todo esta direccion, a la que he accedido desde una consulta del
grupo en ingles:
http://www.ozgrid.com/Excel/run-macro-on-time.htm
Y la ayuda del Visual Basic de excel.
No obstante tengo un problema. Si programo para una hora determinada,
para "activar" el proceso tengo que ejecutar la macro previamente, si no
no pasa nada a la hora en cuestion :-((

Lo que he hecho es poner el el Thisworkbook lo siguiente:

Private Sub Workbook_Open()
Application.OnTime TimeValue("00:25:00"), "copypa"


End Sub


Copypa es mi macro.

Para que se autoejecute tengo que ejecutarla yo primero antes de la hora
especificada (borro la columna) y despues ya se ejecuta sola a las
00:25:00 Si no hago eso, a las 00:25:00 no pasA NADA ¿¿??

Alguna idea? mil gracias


Salu2.

Martin.




Hola martin,

Mira a ver si te vale alguna de las siguientes conversaciones:
http://tinyurl.com/hy2cu

Saludos,
KL


"martin" wrote in message
news:e64m1m$v3j$

Hola a todos,

Tengo una macro que consiste en copiar y pegar una columna dentro de


la
misma hoja. La ejecuto con un boton. Lo que necesito es que se
ejecute



todos los dias a las 3 de la tarde automaticamente. Habitualmente


tengo ese
libro abierto, pero hay dias que a esa hora no estoy delante de el


para
apretar el botonico.

¿Como puedo hacerlo?


Muchas gracias por adelantado.



Salu2


Martin.







Respuesta Responder a este mensaje
#5 martin
07/06/2006 - 18:40 | Informe spam
Gracias KL, pero es demasiado lio para mi. Al final he puesto un boton
asociado a una macro:

Sub ACTIVADOR()

Application.OnTime TimeValue("09:00:00"), "NUEVE"
Application.OnTime TimeValue("13:00:00"), "TRECE"



End sub


Y la macro correspondiende "copypa" que he renombrado como "NUEVE" y
"TRECE" para asociarla a las horas a las que se dispara.

En principio la idea era que al estar el libro abierto y el codigo del
activador en el modulo ThisWorkbook, la macro se ejecutara sin mas a la
hora establecida en el OnTime. Como esto no sucedia, he puesto el
activador en un modulo standard. El inconveniente es que hay que
"apretar" el boton despues de abrir el libro para que se "activen" los
OnTime, pero en fin, tampoco es un inconveniente insalvable, al menos
hasta que nos vayamos de vacaciones :-)))


Salu2 y gracias.


Martin.



Hola martin,

Prueba incluir otra instruccion OnTime en el procedimiento "copypa",
algo asi:

'--en el modulo ThisWorkbook--
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.OnTime Hora, "copypa", False
End Sub

'Si quieres que mientras Excel este abierto
'el libro se abra solo a la hora establecida
'y dispare el procedimiento, borra este
'procedimiento.
Private Sub Workbook_Open()
Application.OnTime Hora, "copypa"
End Sub
'--en el modulo ThisWorkbook--

'--en un modulo estandar--
Public Const Hora = #12:25:00 AM#

Sub copypa()
MsgBox "hola!"
Application.OnTime Hora, "copypa"
End Sub
'--en un modulo estandar--

Saludos,
KL


"martin" wrote in message
news:e6502q$v8n$
Gracias KL, siempre tan diligente en esta ayuda que no tiene precio.
Bueno, despues de dar muchas vueltas he avanzado algo. Me ha ayudado
sobre todo esta direccion, a la que he accedido desde una consulta
del



grupo en ingles:
http://www.ozgrid.com/Excel/run-macro-on-time.htm
Y la ayuda del Visual Basic de excel.
No obstante tengo un problema. Si programo para una hora determinada,
para "activar" el proceso tengo que ejecutar la macro previamente, si


no
no pasa nada a la hora en cuestion :-((

Lo que he hecho es poner el el Thisworkbook lo siguiente:

Private Sub Workbook_Open()
Application.OnTime TimeValue("00:25:00"), "copypa"


End Sub


Copypa es mi macro.

Para que se autoejecute tengo que ejecutarla yo primero antes de la


hora
especificada (borro la columna) y despues ya se ejecuta sola a las
00:25:00 Si no hago eso, a las 00:25:00 no pasA NADA ¿¿??

Alguna idea? mil gracias


Salu2.

Martin.




Hola martin,

Mira a ver si te vale alguna de las siguientes conversaciones:
http://tinyurl.com/hy2cu

Saludos,
KL


"martin" wrote in message
news:e64m1m$v3j$

Hola a todos,

Tengo una macro que consiste en copiar y pegar una columna dentro
de







la
misma hoja. La ejecuto con un boton. Lo que necesito es que se
ejecute



todos los dias a las 3 de la tarde automaticamente. Habitualmente


tengo ese
libro abierto, pero hay dias que a esa hora no estoy delante de el


para
apretar el botonico.

¿Como puedo hacerlo?


Muchas gracias por adelantado.



Salu2


Martin.







email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida