Visual Basic para Aplicaciones - EJECUTAR MACRO EN UNA SOLA PAGINA

Life is soft - evento anual de software empresarial
   
Vista:
Imágen de perfil de edson aldemar

EJECUTAR MACRO EN UNA SOLA PAGINA

Publicado por edson aldemar moriangeles2491@gmail.com (5 intervenciones) el 26/04/2017 20:44:59
Hola chicos; por favor necesitaría que me ayuden en lo siguiente:

tengo una macro de horas que cuando es ejecutada; en el botón apertura; no puedo abrir otros excel; ya que afecta y aparece la hora de mi macro ya ejecutada.para ser mas claro necesitaría ; que cada macro que realice sea ejecutada en mi propia macro sin afectar al resto; esto es mi código:

1
2
3
4
Private Sub Reloj()
Range("F2").Value = Time
Application.OnTime Time + TimeValue("00:00:01"), "reloj"
End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana

EJECUTAR MACRO EN UNA SOLA PAGINA

Publicado por Antoni Masana (154 intervenciones) el 26/04/2017 22:11:16
Me ha costado entender tu problema porque la explicación es horrorosa.

Cuando ejecutas esta macro pone la hora en la celda F2 de cualquier hoja activa de cualquier libro que abras y si este es el problema la solución es especificar el libro y la hoja done se debe poner la hora.

Ahora no recuerdo los comandos pero seria algo así

1
2
3
4
Private Sub Reloj()
    Book("Libro.xlsm").Sheet("Hoja1").Range("F2").Value = Time
    Application.OnTime Time + TimeValue("00:00:01"), "reloj"
End Sub

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de edson aldemar

EJECUTAR MACRO EN UNA SOLA PAGINA

Publicado por edson aldemar (5 intervenciones) el 27/04/2017 00:21:16
Antoni....

En efecto; no fui claro en la petición; lo tendré en cuenta a próximos.:

Solo tengo esta consulta; el documento me sale erronea; ya que me indica que el subindice esta fuera de intervalo; envío los códigos:

1
2
3
4
Private Sub Reloj()
book("MACRO_HORA_MORI2017").Sheet("STATUS").Range("F2").Value = Time
Application.OnTime Time + TimeValue("00:00:01"), "reloj"
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana

EJECUTAR MACRO EN UNA SOLA PAGINA

Publicado por Antoni Masana amasana@hotmail.com (154 intervenciones) el 27/04/2017 06:38:50
Pon este codigo en la hoja STATUS y debería funcionar correctamente:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Sub Tiempo()
    ' --- Mediante esta instruccion "llamamos" a "Actualizarreloj" para volver a _
             actualzizar el Label con la hora
 
    Application.OnTime Now + TimeValue("00:00:01"), _
                Procedure:="Actualizarreloj", _
                Schedule:=True
End Sub
 
Sub Actualizarreloj()
    ' --- Coloca la hora en la Celda Correspondiente
    Workbooks("MACRO_HORA_MORI2017.xlsm").Worksheets("STATUS").Range("F2") = Time
    ' --- "Llama a la rutina que cada 01 segundo "llama" a "Actualizarreloj" _
           para volver a actualzizar el Label con la hora
    Call Tiempo
End Sub
 
Sub Detener_reloj()
    ' --- Detiene el "OnTime"
     Application.OnTime Now + TimeValue("00:00:01"), _
                Procedure:="Actualizarreloj", _
                Schedule:=False
End Sub

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de edson aldemar

EJECUTAR MACRO EN UNA SOLA PAGINA

Publicado por edson aldemar (5 intervenciones) el 27/04/2017 19:44:54
Muchísimas Gracias....

Me dio mucha utilidad.....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar