Bonjour à tous,

Voila j'ai crée une macro me permettant de réinitialiser un tableau (c'est à dire effacer toutes les données à l'intérieur afin de pouvoir refaire une extraction dessus).
Je n'ai pas utilisé de fonction "delete" car je souhaite conserver la mise en forme conditionnelle de mon tableau.
J'ai donc créer un code qui remplace le contenue de chaque case par la valeur vide "". (de la colonne E à AA et toutes les lignes remplies).
Seulement voila, l'execution de ma macro est, je trouve, assez longue (au moins 2 mn pour effacer 5 000 lignes, sachant que par la suite, il pourra y en avoir 50 000)
Voici mon code actuel:

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
22
 
Sub Reinitialisation_Consommation_3_heures()
 
Dim i As Integer
Dim cln As Integer
Dim conso3 As Worksheet
 
Set conso3 = Worksheets("C°<3h")
i = 7
cln = 6
 
conso3.Activate
 
Do While Not IsEmpty(Cells(i, cln))
        For cln = 5 To 27
            conso3.Cells(i, cln).Value = ""
        Next cln
    i = i + 1
    cln = 6
Loop
 
End Sub
Si vous voyez une solution pour accelerer l'execution de cette macro, merci de me le dire
Si vous pensez que c'est normal, vu le nombre de lignes, et qu'on ne peut rien faire... et bien je prendrai mon mal en patience et j'irai boire un café

Merci d'avance

Muriel