Como puedo hacer que mientras se ejecuta una Macro otra tipo Private Sub, no se ejecute

Para Dante Amor,

Hola de nuevo, tengo una consulta más. Tengo esta macro en la hoja Reservas:

Private Sub Worksheet_Change(ByVal Target As Range)
 Rango = "K9,K16:K45"
    If Not Application.Intersect(Target, Range(Rango)) Is Nothing Then
    SupervisarReserva
    End If
End Sub

Esta Macro está controlando cambios en un rango de celdas, si ejecuto otra macro diferente desde un módulo que dentro de su proceso borra ese rango de celdas, esta Macro lo detecta y como consecuencia se queda el equipo pensando sin darme error, como si Excel no respondiera.

¿Cómo puedo hacer para que cuando ejecute la macro Sub RegistrarCliente() que pertenece al modulo y que está en la hoja Datos Clente, no se ejecute la macro Private Sub Worksheet_Change(ByVal Target As Range)?, y así evitar conflictos y errores.

1 Respuesta

Respuesta
2

En la otra macro que vas a ejecutar, antes de iniciar cambios a la hoja, escribe esta instrucción:

Application.EnableEvents = False

'Después pones tu código

'y antes de salirte de esta macro pones esta instrucción

Application.EnableEvents = True

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas