XL 2016 Actualisation du curseur

BEKA One

XLDnaute Nouveau
Salut la communauté,

J'ai élaboré un code pour vider les cellules étalées sur 10 000 lignes et 16 colonnes dans cinq (05) feuilles distinctes.
Voici mon code:

Private Sub Bouton6_Click()
Dim Ligne As Long
Dim Colonne As Long

Application.ScreenUpdating = False

For Ligne = 2 To 10001
For Colonne = 1 To 16
Sheets("AGENT").Cells(Ligne, Colonne) = ""
Sheets("BORD").Cells(Ligne, Colonne) = ""
Sheets("AGENCE").Cells(Ligne, Colonne) = ""
Sheets("SALAIRE").Cells(Ligne, Colonne) = ""
Sheets("JOURNAL").Cells(Ligne, Colonne) = ""
Sheets("DONNEES").Cells(Ligne, Colonne) = ""
Next
Next
Application.ScreenUpdating = True
End Sub

Le code marche, quoique très lent. Mais ce que je n'aime pas du tout, c'est le clignotement du curseur
qui vire en boucle entre la flèche et le cercle de progression. Et je n'aime pas du tout ça. J'ai bien fouillé
sur internet voir si je pouvais trouver une solution à mon problème mais hélas! Je me suis finalement
résolu que le problème se trouverait forcément dans ma macro.

Quelqu’un saurait m'aider? Merci bien!
 

Staple1600

XLDnaute Barbatruc
Bonsoir le fil

Cela devrait être ainsi plus rapide, non?
VB:
Sub xTEST()
Dim i%, F
F = Array("AGENT", "BORD", "AGENCE", "SALAIRE", "JOURNAL", "DONNEES")
Application.ScreenUpdating = False
For i = LBound(F) To UBound(F)
Sheets(F(i)).Range("A2:P10000") = ""
Next
End Sub
 

Paf

XLDnaute Barbatruc
Bonjour,

une proposition qui devrait moins clignoter :

VB:
Private Sub Bouton6_Click()
Dim T

T= Array("AGENT","BORD","AGENCE","SALAIRE","JOURNAL","DONNEES")

Application.ScreenUpdating = False
    For Ind = Lbound(T) To  Ubound(T)
                WorkSheets(T(Ind)).Range("A2:P10001").Clearcontents
    Next
Application.ScreenUpdating = True
End Sub

A+

Edit : Bonjour Staple1600. ça n'est pas du copié-collé, mais pas loin!! désolé.
 

Discussions similaires

Statistiques des forums

Discussions
312 047
Messages
2 084 857
Membres
102 688
dernier inscrit
Biquet78