Bonjour,

Mon probleme est le suivant :
Je souhaite trouver le numéro des lignes de ma colonne A qui contiennent une valeur test et les stocker dans un tableau.

J'arrive à faire ce que je veux mais c'est LONG! (je vais devoir chercher sur 500 000 lignes environ. Pouvez vous m'aider à optimiser la chose ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Public Sub lookfor()
    Dim row_max As Long
    Dim k As Long
    Dim index() As Long
    Dim compt As Long
    Dim number As Long
    Dim test As String
    test = "valeur recherchée"
    compt = 2
    number = 0
    Erase index()
    row_max = Feuil1.Cells(Rows.Count, "A").End(xlUp).Row
    Do
         If Feuil1.Range("A" & compt).Value = test Then
            number = number + 1
            ReDim Preserve index(number)
            index(number) = Feuil1.Range("A" & compt).Row 
         End If
        compt = compt + 1
    Loop Until compt = row_max + 1 
End Sub

Des idées pour accélérer la chose ?


Merci