Si présence d'un mot UNIQUEMENT dans cellules visibles (filtre) [Résolu/Fermé]

-
Bonjour,

J'ai un tableau auquel j'applique des filtres. La colonne qui m'intéresse contient le nom des pays.

J'aimerais pouvoir parcourir les cellules visibles après application du filtre, et repérer si un nom de pays est présent dans cette liste.

Pour l'instant j'ai écris ce code:

Sub Carte()

Dim Line As Long
Dim LastLine As Long
Dim Origin As String
LastLine = Sheets("Feuille").Cells(Rows.Count, 17).End(xlUp).Row
For Line = LastLine To 18 Step -1
If Sheets("Feuille").Cells(Line, 17) Like "France" Then
ActiveSheet.Shapes("Freeform 566").Select
Selection.ShapeRange.Fill.ForeColor.SchemeColor = 2
End If
Next Line

End Sub

Le problème c'est que ce code parcours aussi les cellules cachées.....

Des idées?

Merci à tous

Afficher la suite 

1 réponse

Messages postés
3341
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
450
0
Merci
Bonjour,

Essaie comme cela
Sub Carte()
Dim LastLine As Long
Dim Cel As Range
With Sheets("Feuille")
LastLine = .Cells(Rows.Count, 17).End(xlUp).Row
For Each Cel In .Range(.Cells(18, 17), .Cells(LastLine, 17)).SpecialCells(xlCellTypeVisible)
If Cel Like "France" Then
ActiveSheet.Shapes("Freeform 566").Select
Selection.ShapeRange.Fill.ForeColor.SchemeColor = 2
End If
Next Cel
End With
End Sub

A+
Merci :D ça fonctionne super bien!!