[RESOLU] : Fonction VBA Clear all sur plusieurs feuilles

  • Initiateur de la discussion Initiateur de la discussion joedu31
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

joedu31

XLDnaute Nouveau
Bonjour,

J'ai un fichier avec plusieurs feuilles dedans et je souhaiterai procéder à la suppression du contenue de certaines cellules dans chacune des feuilles lorsque j'appuie sur un bouton en feuille 1. (Remise à zéro de la feuille)
J'ai réussi à appliquer cette formule
Code:
'Suppression Feuille1'

Range("E10:E18") = ""
Range("J10:J18") = ""
Range("K10:K18") = ""

mais uniquement dans la feuille 1, j'aimerai faire autant dans la feuille 2 par exemple (toujours à partir du bouton de la feuille1).

Comment peut-on relier les feuilles entre elles?

Merci à vous,
Joe
 
Dernière modification par un modérateur:
Re : Fonction VBA Clear all sur plusieurs feuilles

Bonjour,

Une suggestion ...

Code:
Sub MaMacro()
Dim Ws As Worksheet
  For Each Ws In ThisWorkbook.Worksheets
    Ws.Range("E10:E18") = ""
    Ws.Range("J10:J18") = ""
    Ws.Range("K10:K18") = ""
  Next Ws
End Sub


Jecherche
 
Bonjour,

une variante :

VB:
Sub Macro1()
         Dim Ws As Worksheet
         Application.ScreenUpdating = False
    For Each Ws In ThisWorkbook.Worksheets
             Ws.Range("E10:E18,J10:K18").ClearContents
    Next
         Application.ScreenUpdating = True
End Sub
_______________________________________________________________________________
Merci de cliquer sur J'aime ce post en bas à gauche de chaque message ayant aidé …

_______________________________________________________________________________
Je suis Paris, Charlie, Bruxelles, …
 
Dernière édition:
Re : Fonction VBA Clear all sur plusieurs feuilles

Bonjour.

Pour faire l'opération sur toutes les feuilles à partir de celle en 2ième position :
VB:
Sub Macro1()
Dim N As Long
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
For N = 2 To ThisWorkbook.Worksheets.Count
   ThisWorkbook.Worksheets(N).Range("E10:E18,J10:K18").ClearContents
   Next N
Application.Calculation = xlCalculationAutomatic
End Sub
Remarquez le Application.Calculation = xlCalculationManual qui accélèrerait considérablement l'exécution si de nombreuses formules dans d'autre cellules s'appuyaient sur celles effacées. (C'est un autre fil de vous qui m'y fait penser)
 
Re : Fonction VBA Clear all sur plusieurs feuilles

Ta fonction marche nickel 😀 Mais j'ai volontairement pas utilisé la fonction ".ClearContents" car elle ne permet pas de garder les couleurs de fond, c'est pour ça que j'ai utilisé la petite bidouille "".

J'envisage par la suite de renommer les feuilles et utiliser la fonction "nettoyage" uniquement sur certaines feuilles (ex: 1 et 3). Est possible d'adapter la formule en remplissant dans la macro par les noms de feuilles pour que je ne soit pas gêné si j'échange l'ordre des feuilles 🙂

Cf Doc joint

Merci pour votre aide
 
Re : Fonction VBA Clear all sur plusieurs feuilles

Problème résolu avec ceci;
Code:
Application.ScreenUpdating = False

Sheets("Nom de feuille 1").Select
Range("E10:E18") = ""
 Range("J10:J18") = ""
 Range("K10:K18") = ""

Sheets("Nom de feuille 2").Select
Range("...") = ""
 
Application.ScreenUpdating = True

Merci à vous
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour