Vba run-time error 13 type mismatch

Bonjour,
Je suis débutant. j'ai plus ou moins fait une macro qui marche pas trop mal mais malheureusement pour une seule cellule.dés que je veux effacer plusieurs cellules
via macro ou en manuel j'ai un message comme ceci:
vba run-time error 13 type mismatch
lorsque je clique sur debug ceci est souligné:
If Target.Column = 5 And UCase(Target) = "YES" Then

et enfin voici ma macro complete:

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Column = 5 And UCase(Target) = "YES" Then
Target.EntireRow.Copy
Sheets("Feuil2").Select
ActiveSheet.Range("A1").Select
ActiveSheet.[A65536].End(xlUp).Select
ActiveCell.Offset(1, 0).Select
Selection.EntireRow.Insert
Sheets("Feuil1").Select
Target.EntireRow.ClearContents

End If
End Sub

merci pour tout aide.

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. bonjour

    pourrais tu expliquer ce que ta macro est censée réaliser ?

    bonne suite
    1. la macro doit faire:
      si dans la colonne E:E le mot "yes" est inscrit alors déplacer le contenu de la colonne horizontale ou se trouve "yes" dans la "feuil2"

      Plus tard je rajouterai d'autres mots clé à déplacer dans d'autres feuilles.
      dommage pour l'instant personne n'arrive à résoudre mon problème.snif
      1. La colonne horizontale .. ?! Oo
    2. re

      peut être quelque chose comme ça

      Private Sub Worksheet_Change(ByVal Target As Range) 
      Dim li1 As Long, li2 As Long 
        If Not Intersect(Target, Range("E:E")) Is Nothing Then 
          If UCase(Target) = "YES" Then  
            li1 = Target.Row 
            li2 = Sheets("Feuil2").Range("A65536").End(xlUp).Row + 1 
            Sheets("Feuil1").Cells(li1, 1).EntireRow.Copy Sheets("Feuil2").Cells(li2, 1) 
          End If 
        End If 
      End Sub

      bonne suite