Posez votre question Signaler

Problème VB for each [Résolu]

Vikings76 3Messages postés 22 avril 2009Date d'inscription - Dernière réponse le 24 avril 2009 à 22:05
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
Lire la suite 

Problème VB for each »

Suggestions
4 réponses
Réponse
+0
moins plus
Si j'ai bien compris,:

tu veux, pour chaque cellule de A6:A9, coller la valeur de la cellule B1 si la cellule Ax est égale à la cellule A1 ?

Set plage = Range("a6:a9")
For Each cellule In plage
If (cellule.Value = Range("a1")) Then
cellule.Value = Range("b1").value
End If
Next cellule

ou alors tu veux y copier un décalage de la cellule B1 (offset(0,1) soit heu! C1?

soit je n'ai pas tout compris !, (dans la mesure ou tu copies B1, tu ne pourra pas coller autre chose)

Un peu de précision pour te répondre.
Ajouter un commentaire
Réponse
+0
moins plus
Merci pour ta réponse rapide. En fait j'ai la solution. Dans ma macro la ligne " cellule.Value = cellule.Offset(0, 1).PasteSpecial " il suffit que j'enlève " cellule.Value = " et j'ai le résultat que je souhaite. Pour plus de précision je veux que pour chaque cellule de A6:A9, coller la valeur de la cellule B1 si la cellule Ax est égale à la cellule A1 donc en Bx et si c'est Ay qui est égal on copie en By tout simplement. Le problème au début était que la valeur Ax ne restait pas Ax mais devenait "VRAI".
Merci.
Ajouter un commentaire
Réponse
+0
moins plus
Ah oui, j'ai mieux compris avec les explications!( tardives)

Bonne soirée
Ajouter un commentaire
Réponse
+0
moins plus
Désolé de ne pas répondre plus vite, mais j'ai d'autres choses à faire avant le "plaisir".
Merci
Ajouter un commentaire
Ce document intitulé « Problème VB for each » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?