Comparer les cellules d'une plage aux cellule

Bonjour,

j'utilise actuellement dans une macro vba la formule suivante qui me permet de comparer les cellules d'une plage donnée à une cellule et de mettre une valeur dans la case voisine si la valeur des cellules comparées est identique.

For Each c In Worksheets("Feuil2").Range("B10:B50")
If c.Value = Worksheets("Feuil1").Range("B10").Value Then
c.Offset(0, 1).Value = "1"
End If
Next

Ce que je souhaiterai faire c'est comparer les cellules non pas à une seule cellule mais à toutes les cellules d'une plage donnée, par exemple range("B10:B50").

J'ai donc essayé cette solution et j'ai une erreur d'execution '13' incompatibilité de type.

Merci d'avance pour votre aide

4 réponses

  1. Bonjour,

    For Each c In Worksheets("Feuil2").Range("B10:B50")
    For x = 10 To 50
    If Worksheets("Feuil1").Range("B" & x).Value <> "" Then
    If c.Value = Worksheets("Feuil1").Range("B" & x).Value Then
    c.Offset(0, 1).Value = "1"
    End If
    End If
    Next x
    Next

    a essayer.

    Bonne continuation.
    0
    1. merci de cette réponse.

      je test et je vous dis si ça fonctionne.
      0
      1. Bonjour,

        une autre solution :

        Sub cherche()
        Dim PlgSource As Range, PlgRech As Range, Cel As Range, C As Range
        Set PlgSource = Sheets("Feuil2").Range("B10:B50")
        Set PlgRech = Sheets("Feuil1").Range("B10:B50")
        For Each Cel In PlgSource
            If Cel <> "" Then
                Set C = PlgRech.Find(Cel)
                If Not C Is Nothing Then Cel.Offset(, 1) = 1
            End If
        Next Cel
        End Sub
        


        Bonne journée
        0
        1. salut à tous

          j'ai testé et ça marche exactement comme je le souhaitais.

          Merci pour cette aide.
          0