Boucle "for" sur une liste prédéfinie

  • Initiateur de la discussion Initiateur de la discussion william68
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

W

william68

Guest
Bonjour,

J'ai définit une liste du nom de "countries_regions".

Je souhaite comparer cette liste à une autre colonne d'une feuille excel.

Ensuite si la valeur présente dans la colonne l'est également dans la liste je souhaite mettre un "x" dans la colonne à côté.

J'ai essayé avec ce code là mais sans succès:

Code:
Set Maliste = Range("CountriesSelected")
        For i = 2 To 240
            If Sheets("countries_regions").Cells(i, 1).Value = Maliste.Value Then Sheets("countries_regions").Cells(i, 2).Value = "x"
        Next i

Quelqu'un aurait une idée sur mon erreur ?

Merci d'avance
 
Re : Boucle "for" sur une liste prédéfinie

bonjour,
comment veux-tu comparer une liste à une colonne
- vérifier si chaque élément de la liste est présent dans la colonne ?

un petit extrait de ton fichier, la réponse à ma question et dans ton fichier, un exemple de ce que tu attends seraient les bienvenus ...
 
Re : Boucle "for" sur une liste prédéfinie

bonjour william

ta liste est constituée de plusieurs cellules
il faut comparer chacune d'ou
A tester
Code:
Set Maliste = Range("CountriesSelected")
        For i = 2 To 240
         [COLOR=blue]for each cel in Maliste[/COLOR]
            If Sheets("countries_regions").Cells(i, 1).Value = [COLOR=blue]cel.Value[/COLOR] Then Sheets("countries_regions").Cells(i, 2).Value = "x"
          [COLOR=blue]next cel[/COLOR]
        Next i

Edit : Salut Bertrand
 
Re : Boucle "for" sur une liste prédéfinie

Merci beaucoup.

Finalement j'ai adapté un peu:

With Worksheets("legend").Range("c2:c500")
For i = 2 To 240
Set c = .Find(Sheets("countries_regions").Cells(i, 1).Value, LookIn:=xlValues)
If Not c Is Nothing Then
Sheets("countries_regions").Cells(i, 2).Value = "x"
Else
Sheets("countries_regions").Cells(i, 2).Value = ""
End If
Next i
End With
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
2
Affichages
528
Réponses
8
Affichages
782
Réponses
7
Affichages
538
Réponses
5
Affichages
914
Réponses
15
Affichages
788
Réponses
5
Affichages
574
Réponses
10
Affichages
645
Retour