Boucle sur plusieurs feuilles

  • Initiateur de la discussion Initiateur de la discussion natbru
  • 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 !

natbru

XLDnaute Occasionnel
Bonjour,

Ci-joint le classeur exemple.

Le but est de supprimer le contenu des cellules lorsqu'elles sont en jaune.
Ma macro fonctionne mais uniquement sur la feuille selectionnée, alors qu'il faut qu'elle s'execute sur toutes les feuilles.

Dim feuille As Worksheet
Dim cellule As Range
Dim constantes As Range
Dim formules As Range

Sub effacer2()

If MsgBox("Etes-vous sûr de vouloir effacer toutes les données saisies ?", vbYesNo) = vbYes Then

On Error Resume Next

For Each feuille In Worksheets

Set constantes = Selection.SpecialCells(xlConstants)
For Each cellule In constantes
If cellule.Interior.ColorIndex = 36 Then cellule.ClearContents
Next cellule

Set formules = Selection.SpecialCells(xlFormulas)
For Each cellule In formules
If cellule.Interior.ColorIndex = 36 Then cellule.ClearContents
Next cellule

Next feuille

End If

End Sub


Je pense qu'il n'y a pas de meilleur endroit qu'ici pour avoir un petit conseil. Alors merci d'avance.

Natacha.
 

Pièces jointes

Re : Boucle sur plusieurs feuilles

Bonjour natbru

Set constantes = Selection.SpecialCells(xlConstants)
For Each cellule In constantes
If cellule.Interior.ColorIndex = 36 Then cellule.ClearContents

je ne sais pas mais dans selection ne cerroespond a rien de selectionné
et tu ne fais reférence à aucune feuille
c'est en aveugle mais essaye

feuille.cells.select
Set constantes = Selection.SpecialCells(xlConstants)
For Each cellule In constantes
If cellule.Interior.ColorIndex = 36 Then cellule.ClearContents
ou encore :
Set constantes = feuille.SpecialCells(xlConstants)
For Each cellule In constantes
If cellule.Interior.ColorIndex = 36 Then cellule.ClearContents

m'enfin si tu utilise selection c'est qu'il y a qelque chose de selectionné

@ te lire
 
Re : Boucle sur plusieurs feuilles

Merci Wilfried pour ta réponse,

j'ai testé tes deux solutions :

- la 1ère a eu le même effet que la mienne

-la 2e = bug

aurais tu une autre idée ?

pour la selection, en effet, je savais pas quoi mettre d'autre...lol

je voulais que seules les cellules non vides soit étudié.
 
Re : Boucle sur plusieurs feuilles

Bonjour le fil,

Un complément de réponse à natbru:

Dans ta boucle, les feuilles ne sont pas activées, toute commande de sélection est dès lors impossible.(sauf pour la première, qui est active)

Il faut donc coder autrement, ce que te propose ninbihan, ou activer la feuille à chaque tour de boucle, ce qui est moins élégant et moins rapide!

Bonne journée
 
- 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

Réponses
7
Affichages
453
Réponses
4
Affichages
730
Réponses
5
Affichages
573
Retour