babay a écrit :
Comment parcourir une selection ligne par ligne par rechercher une valeur?
for i=premiere ligne to selection.rows.count
if sheets(1).cells(i,3)="moi" then msgbox i i=i+1
next
le problème est la définition de la premiere ligne et si j'ai une selection à plusieurs zones comme Worksheets(1).Range("A1:H5,A10:H15" ).
|
Bonjour,
En définissant une sélection multiple dans une feuille de calcul et en l'affectant à un objet range puis en parcourant toutes les cellule de cet objet range, cela devrait à peu près répondre à ta demande, voir ci dessous:
Sub Macro1()
Dim MaZone As Range
Dim MaCellule As Variant
Range("B3:B8,D9:D16,F10:F16" ).Select
Range("F10" ).Activate
ActiveWorkbook.Names.Add Name:="MonSelect", RefersToR1C1:= _
"=Feuil1!R3C2:R8C2,Feuil1!R9C4:R16C4,Feuil1!R10C6:R16C6"
Set MaZone = Sheets("feuil1" ).Range("MonSelect" )
For Each MaCellule In MaZone
Debug.Print MaCellule.Value
Next MaCellule
End Sub
N'hésite pas si cela ne colle pas.
Cordialement
Pifa