Problème avec For Each

Résolu
Vikings76 Messages postés 5 Date d'inscription mercredi 22 avril 2009 Statut Membre Dernière intervention 24 avril 2009 - 22 avril 2009 à 21:55
Vikings76 Messages postés 5 Date d'inscription mercredi 22 avril 2009 Statut Membre Dernière intervention 24 avril 2009 - 23 avril 2009 à 22:33
Bonjour, tout le monde et merci pour vos réponses
Voila je suis débutant et j'ai un petit souci avec une macro For Each. En fait la macro fonctionne sauf que lorsque la condition souhaitée est trouvée, la valeur de ma cellule passe à "vrai" et donc ne garde pas sa valeur initiale. Comment faire pour remédier à cela ?

Sub essai()

Dim plage As Range, cellule As Range
   Set plage = Range("a6:a9")
   For Each cellule In plage
   If (cellule.Value = Range("a1")) Then
   Range("b1").Copy
   cellule.Value = cellule.Offset(0, 1).PasteSpecial
   End If
  
   Next cellule

End Sub

Merci

Vikings

3 réponses

cnt Messages postés 219 Date d'inscription lundi 21 novembre 2005 Statut Membre Dernière intervention 20 décembre 2010 1
22 avril 2009 à 23:57
Salut
Comme le coller est bien réel, donc VRAI, la cellule en donne le résultat. Il suffit de ne pas écrire ==> cellule.Value = cellule.Offset(0, 1).PasteSpecial

Sub essai()
    Dim plage As Range, cellule As Range
   
    Set plage = Range("a6:a9")
   
    For Each cellule In plage
        If (cellule.Value = Range("a1")) Then
            Range("b1").Copy
            cellule.Offset(0, 1).PasteSpecial
        End If
    Next cellule
End Sub

CNTJC
3
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
23 avril 2009 à 08:11
en clair, PasteSpecial effectue le collage...

pas besoin de jouer avec une affectation
3
Vikings76 Messages postés 5 Date d'inscription mercredi 22 avril 2009 Statut Membre Dernière intervention 24 avril 2009
23 avril 2009 à 22:33
Un grand merci pour cette réponse rapide et précise. Et bien sûr cela fonctionne parfaitement comme voulu.
Encore merci.
De plus je crois comprendre la subtilité de mon erreur de départ.

Vikings
0
Rejoignez-nous