XL 2010 Function personalisée pas assez rapide

Giboin

XLDnaute Nouveau
Bonjour à tous,

Voici le code de ma function personalisée. Elle fonctionne parfaitement mais elle est lente et celà est assez normal compte tenu du fait qu'elle boucle sur plus de 11000 lignes. Je me doute que je dois passer par du for range imbriqué, mais j'ai un peu de mal. Pouvez-vous m'aider un peu ?

VB:
Function GetFromRZ(FromA, ToB, ColumnName, Optional Nnummer)
Application.DisplayAlerts = False
Application.ScreenUpdating = False
Application.DisplayStatusBar = False
Application.EnableEvents = False

If IsMissing(Nnummer) Then Nnummer = 1

LL = 1
FindCount = 0


    Do Until LL = 50000
    LL = LL + 1
   
    If FromA = 0 Or FromA = "" Then LL = 50000
    If ToB = 0 Or ToB = "" Then LL = 50000
   
        If Sheets("DATA").Cells(LL, 1) = FromA Then
       
            If Sheets("DATA").Cells(LL, 17) = ToB Then
           
            FindCount = FindCount + 1
                If FindCount = Nnummer Then
               
                If ColumnName = 1 Then Result = Sheets("DATA").Cells(LL, 2) 'PortA
                If ColumnName = 2 Then Result = Sheets("DATA").Cells(LL, 4) 'KabelA
                If ColumnName = 3 Then Result = Sheets("DATA").Cells(LL, 9) 'LWL
                If ColumnName = 4 Then Result = Sheets("DATA").Cells(LL, 11) 'RZ
                If ColumnName = 5 Then Result = Sheets("DATA").Cells(LL, 12) 'KabelB=get
                If ColumnName = 6 Then Result = "Pos. " & Sheets("DATA").Cells(LL, 13) 'Position
                If ColumnName = 7 Then Result = Sheets("DATA").Cells(LL, 18) 'PortB
                   
                LL = 50000
               
                End If
            End If
       
        End If
   
    Loop


If Result = 0 Then Result = ""
GetFromRZ = Result

Application.DisplayAlerts = True
Application.ScreenUpdating = True
Application.DisplayStatusBar = True
Application.EnableEvents = True

End Function
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour Giboin et bienvenue sur XLD,

Au minimum et par respect pour les futurs potentiels répondeurs, il serait bon de nous fournir votre fichier (quelques lignes représentatives suffiront et avec la macro bien sûr) et de nous expliquer quel est le but de cette macro.

Merci et à plus,

nota : à défaut, suivez les excellents conseils de Dranreb que je salue ;).
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
314 017
Messages
2 104 584
Membres
109 084
dernier inscrit
mizab