S
sinedv
Guest
Bonjour,
Pour optimiser et surtout alléger un grand tableau (> 20 000 lignes et 250 colonnes), j'ai écris une macros pour effacer les lignes masquées par l'utilisation d'un filtre automatique.
Cette macro fonctionne très bien ... sauf qu'elle prends plusieurs minutes ...
Avez-vous des idées pour optimiser le temps d'exécution ?
merci d'avance, 🙂
Pour optimiser et surtout alléger un grand tableau (> 20 000 lignes et 250 colonnes), j'ai écris une macros pour effacer les lignes masquées par l'utilisation d'un filtre automatique.
Code:
Sub del_hidden_rows()
Application.ScreenUpdating = False
timestart = Timer
Application.Calculation = xlManual
curlig = 9
Do Until (IsEmpty(Cells(curlig, 1)))
Cells(curlig, 1).Select
If (Cells(curlig, 1).Rows.Hidden) Then
Rows(curlig).Delete
Else
curlig = curlig + 1
End If
Loop
Calculate
timestop = Timer - timestart
msgtxt = "Del hidden rows duration: " & timestop
Application.ScreenUpdating = True
Application.Calculation = xlAutomatic
MsgBox (msgtxt)
End Sub
Cette macro fonctionne très bien ... sauf qu'elle prends plusieurs minutes ...
Avez-vous des idées pour optimiser le temps d'exécution ?
merci d'avance, 🙂