Changement global de couleur de cellules

decid

XLDnaute Nouveau
Bonjour,
Comment remplacer ou modifier la couleur de fond de toutes les cellules d'une feuille et d'un classeur ?

Exemple joint

Merci et bonne journée
 

Pièces jointes

  • ChgtCouleurCell.xlsm
    13.6 KB · Affichages: 63

flyonets44

XLDnaute Occasionnel
Re : Changement global de couleur de cellules

Bonjour
Avec cette procédure
Sub Changecolor
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Dim I&
For i = 1 sheets.count
with activesheet
.cells.interior.colorindex= 33 'par exemple
end with
next
Application.Calculation = xlCalculationAutomatic
End Sub
Cordialement
Flyonets
 

dra72

XLDnaute Occasionnel
Re : Changement global de couleur de cellules

Bonjour.

Je te propose:
Code:
Sub ConditionCouleur()
    
Dim S As Worksheet
Dim R As Range

For Each S In Worksheets
  For Each R In S.UsedRange
    If R.Interior.ColorIndex = 40 Then
      With R.Interior
          .Pattern = xlSolid
          .PatternColorIndex = xlAutomatic
          .ThemeColor = xlThemeColorDark1
          .TintAndShade = -4.99893185216834E-02
          .PatternTintAndShade = 0
       End With
    End If
  Next
Next

End Sub

Cordialement

PS Ceci ne modifie que les cellules couleur saumon comme indiqué dans ton fichier exemple. Ce que tu indiques dans ton message est totalement différent.
 
Dernière édition:

decid

XLDnaute Nouveau
Re : Changement global de couleur de cellules

Re dra72,

Bonjour,
Comment pour être plus efficace remplacer Worksheet
par ZoneTrait = Range("A1", ActiveCell.SpecialCells(xlLastCell)).Select
de ne façon à ne traiter que les cellules utilisées

Merci decid
 

dra72

XLDnaute Occasionnel
Re : Changement global de couleur de cellules

A mon avis, l'utilisation de ActiveCell.SpecialCells(xlLastCell) ne va rien t'apporter en efficacité.

UsedRange que j'ai utilisé limite déjà la zone aux cellules utilisées de la feuille.

A moins que tu n'ais plusieurs tableaux distincts dans une même feuille, séparés par plusieurs lignes vides. Il faudrait alors traiter zone par zone.
 

decid

XLDnaute Nouveau
Re : Changement global de couleur de cellules

Merci dra72 - voila la solution retenue - Bonne journée

Private Sub Mofi_Couleur_Cell()
Application.ScreenUpdating = False
Dim Cellules As Range
On Error Resume Next
Range("A1", ActiveCell.SpecialCells(xlLastCell)).Select
For Each Cellules In Selection
If Cellules.Interior.ColorIndex = 40 Then
With Cellules.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorDark1
.TintAndShade = -4.99893185216834E-02
.PatternTintAndShade = 0
End With
End If
Next Cellules
Application.Goto Range("A1"), True '
End Sub
 

Discussions similaires

Réponses
16
Affichages
295
Réponses
1
Affichages
213

Statistiques des forums

Discussions
312 310
Messages
2 087 128
Membres
103 479
dernier inscrit
Compta