Macro VBA pour supprimer des lignes rapidement

J'ai plusieurs très grandes excel fichiers de données et j'ai besoin d'aller à travers eux tous, et supprimer toutes les lignes dont la valeur de la cellule dans la colonne T est 1. Droit maintenant, mon code ressemble à ceci:

Sub test()
    Dim cell As Range

    For Each cell In Worksheets("Sheet1").Range("T5", "T900000")
        If cell.Value = 1 Then
            cell.EntireRow.Delete
        End If
    Next cell
End Sub

Il semble fonctionner, mais prend une éternité à courir et je vais avoir à faire un tas de fois. Est-il une meilleure manière de faire ceci, ou d'une certaine façon à optimiser ce que j'ai déjà à faire tourner plus vite?

Range([T5], [T5].End(xlDown)) sélectionner toutes les cellules contigües avec des valeurs de départ à T5. Sauf si vous avez vraiment 900k lignes c'est lié à être beaucoup plus rapide...
Ouais, j'ai vraiment que de nombreuses cellules...

OriginalL'auteur scaevity | 2013-03-13