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
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
-
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. -
merci de cette réponse.
je test et je vous dis si ça fonctionne. -
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 -
salut à tous
j'ai testé et ça marche exactement comme je le souhaitais.
Merci pour cette aide.