[VBA] modifier couleur

swan

XLDnaute Junior
Bonjour,

je voudrais utiliser une macro qui change la couleur de fond d'une plage de cellules
à partir de la 2e ligne jusqu'à la dernière ligne non vide des colonnes A à J.

J'ai utilisé l'enregistreur de macro et collé le code dans une boucle:

Sub test()
For n = 2 To Range("A65536").End(xlUp).Row
With Selection.Interior
.ColorIndex = 35
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
End With
Next n
End Sub

... mais évidemment c'est pas le bon code que je cherche.

que faut-il mettre à la place de "Selection" (qui me change la couleur uniquement des plages sélectionnées)
pour que la boucle marche?
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : [VBA] modifier couleur

Bonjour Swan, bonjour le forum,

Essaie comme ça :
Code:
Sub test()
Dim n As Long
n = Range("A65536").End(xlUp).Row 'ou n = Range("J65536").End(xlUp)
With Range("A2:J" & n).Interior
.ColorIndex = 35
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
End With
End Sub
 
G

Guest

Guest
Re : [VBA] modifier couleur

bonjour Swan,

Avec ceci:
Code:
Sub test()
    Dim n As Integer, cpt As Integer
    cpt = Range("A65536").End(xlUp).Row
    For n = 2 To cpt
        With Cells(n, 1).Interior
            .ColorIndex = 35
            .Pattern = xlSolid
            .PatternColorIndex = xlAutomatic
        End With
    Next n
End Sub

Où n est le numéro de ligne (variable) et i le numéro de colonne.
cpt est une variable qui contient le nombre de lignes à modifier, evite à VBA d'avoir à recalculer ce nombre à chaque passage de boucle For

A bientôt

Désolé: je n'avais pas vu le besoin sur les colonne A à J
 
Dernière modification par un modérateur:

Staple1600

XLDnaute Barbatruc
Re : [VBA] modifier couleur

Bonjour à tous


Une autre solution

Code:
Sub test()
Range(Cells(2, "A"), _
Cells(Columns("A:J").SpecialCells(xlCellTypeConstants, _
23).Areas(2).Rows.Count + 1, "J")).Interior.ColorIndex = 35
End Sub
EDITION: houps désolé pour la collision michel_m (bonjour )
 
G

Guest

Guest
Re : [VBA] modifier couleur

Bonsoir Michel m,

La Solution que tu proposes est plus rapide et élégante. Encore faudrait-il que je ne sois pas aveuglé par ce que propose le demandeur....

Merci à toi
 

Discussions similaires