¿Por que sale el error "13 no coinciden los tipos" al borrar el contenido de las celdas?

Tengo una macro que hace lo que deseo y tengo otra que adjunta una hoja a un mail, pero al finalzar barra el contenido de las celdas, entonces me sale el error de la pregunta.

Private Sub Worksheet_Change(ByVal Target As Range)
'se controla el rango
If Not Intersect(Target, Range("q11:q55")) Is Nothing Then - en esta linea me marca el error
If Target.Value = "FALLA MECANICA EN CORTADORA" Then
MsgBox "Advertencia !!! Tiene fallas mecanicas o eei, envie un mail a mantenimiento " 
UserForm1.Show
End If
If Target.Value = "FALLA MECANICA EN EMBALADORA" Then
MsgBox "Advertencia !!! Tiene fallas mecanicas o eei, envie un mail a mantenimiento " 
UserForm1.Show
End If
If Target.Value = "FALLA MECACNICA EN ENCAJADORA" Then
MsgBox "Advertencia !!! Tiene fallas mecanicas o eei, envie un mail a mantenimiento " 
UserForm1.Show
End If
If Target.Value = "FALLA MECANICA EN MOSCA" Then
MsgBox "Advertencia !!! Tiene fallas mecanicas o eei, envie un mail a mantenimiento " 
UserForm1.Show
End If
If Target.Value = "FALLLA EEI EN CORTADORA" Then
MsgBox "Advertencia !!! Tiene fallas mecanicas o eei, envie un mail a mantenimiento " 
UserForm1.Show
End If
If Target.Value = "FALLA EEI EN EMBLADORA" Then
MsgBox "Advertencia !!! Tiene fallas mecanicas o eei, envie un mail a mantenimiento " 
UserForm1.Show
End If
If Target.Value = "FALLA EEI EN ENCAJADORA" Then
MsgBox "Advertencia !!! Tiene fallas mecanicas o eei, envie un mail a mantenimiento " 
UserForm1.Show
End If
If Target.Value = "FALLA EEI EN MOSCA" Then
MsgBox "Advertencia !!! Tiene fallas mecanicas o eei, envie un mail a mantenimiento " 
UserForm1.Show
End If
End If
End Sub

1 respuesta

Respuesta
1

H o l a:

Supongo que la otra macro borra las celdas con un código como este:

 Range("q11:q55"). Clear

El error es porque en Target tienes un rango de celdas, es decir, en Taget tienes muchos valores, y no puedes preguntar por un solo valor de esta manera:

If Target.Value = "FALLA MECANICA EN CORTADORA" Then

Es por eso que te envía el mensaje de error : "No coinciden los tipos".

También supongo que estás borrando los valores de las celdas "q11:q55", para iniciar con otra captura. En este caso no sería necesario verificar el contenido de las celdas, por lo tanto, podríamos "deshabilitar" los eventos, borrar las celdas y "habilitar" nuevamente los eventos, por ejemplo, en tu otra macro pon un código como este:

    Application.EnableEvents = False    'Deshabilita los eventos
    Range("q11:q55").Clear              'Borra las celdas
    Application.EnableEvents = True     'Habilita los eventos

Si tienes dudas de cómo ponerlo en tu "otra macro", escribe la macro y la reviso.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

¡Gracias! Hola, Dante¡¡¡¡¡

Si la otra macro tiene esa instrucción

 Range("q11:q55"). Clear

coloque en la macro que borra las celdas el código como indicas y funciona perfecto muchas gracias.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas