Affecter une valeur en colonne C selon valleur colonne D (VBA)
nhanvin
Messages postés6Date d'inscriptionlundi 26 novembre 2007StatutMembreDernière intervention27 juillet 2011
-
27 juil. 2011 à 11:42
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018
-
27 juil. 2011 à 14:49
Bonjour à tous,
Voici mon but: Si dans la colonne D la valeur de la cellule est ne commence pas par 606 ou 611 alors la valeur dans la colonne C est "SGA".
Ci-dessous la macro que j'ai faîte mais qui ne fonctionne pas d'où l'existence de cette question:
Sub SGA()
Range("D1:D1000").Select
For i = 1 To 1000
Next
If Range.Value <> "606*" And If Range.Value <> "611*" Then
Range("D1:D1000").Offset(0, 1).Value = "SGA"
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 27 juil. 2011 à 14:49
Bonjour,
et en plus de ce que montre du doit NHenry .
Range("D1:D1000").Select
For i = 1 To 1000
Next
If Range.Value <> "606*" And Range.Value <> "611*" Then
Range("D1:D1000").Offset(0, 1).Value = "SGA"
End If
End Sub
C'est quoi, cette syntaxe qui défie littéralement toutes les lois de la pesanteur, hein ?
Un inventaire succinct :
- un select lourd, inutile (et inutilisé)
- une boucle qui ne fait rien
- un Range.value qui ne se réfère à rien
Je crois que tu aurais tout intérêt à reprendre tout à la base (car j'ai l'impression de ce que tu y vas "au petit bonheur la chance" et que tu ne saurais aller loin ainsi !
____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP