Sélection de colonnes

Bonjour à tous,

Je bloque sur un petit problème.

Je souhaite colorier une plage de 3 cellules sur une ligne.

En partant de la cellule contenant le mot "TR2" sur 3 colonnes.

Avec "Row", cela colorie les 3 cellules sur 3 lignes --> OK :

    Set Cellule = .Find("TR2", Lookat:=xlWhole)
    If Not Cellule Is Nothing Then Cellule.Row("1:3").Interior.Color = 5296274

Mais pas avec Columns, afin de colorier 3 cellule sur 3 colonnes :

    Set Cellule = .Find("TR2", Lookat:=xlWhole)
    If Not Cellule Is Nothing Then Cellule.Columns("1:3").Interior.Color = 5296274

Une petite aide s'il vous plait ?

Merci d'avance,

Bonsoir,

Essaye comme ça ou peut être en l'adaptant :

Sub colorier()
    With Cells ' ici peut être à limiter la plage de la recherche au lieu de toutes les cellules
        Set cel = .Find("TR2", Lookat:=xlWhole)
        If Not cel Is Nothing Then
            'plage de première à la dernière cellule par rapport à la première cellule
            Range(cel.Address, cel.Offset(2, 2).Address).Interior.Color = 5296274
        End If
    End With
    Set cel = Nothing
End Sub

Bonjour,

Merci pour ta réponse.

La seule solution trouvée est celle là :

PS : je n'ai pas 3 colonne à colorier mais 21... Mais le principe reste le même.

Sub Colorier()
With Worksheets("Planning").Range("A1:A200")
   Set cel = .Find("TR2", Lookat:=xlWhole)
    If Not cel Is Nothing Then
       Range(cel.Address, cel.Offset(, 1).Address).Interior.Color = 5296274
       Range(cel.Offset(, 2).Address).Interior.Color = 5296274
       Range(cel.Offset(, 3).Address, cel.Offset(, 4).Address).Interior.Color = 5296274
       Range(cel.Offset(, 5).Address, cel.Offset(, 6).Address).Interior.Color = 5296274
       Range(cel.Offset(, 7).Address, cel.Offset(, 8).Address).Interior.Color = 5296274
       Range(cel.Offset(, 9).Address, cel.Offset(, 10).Address).Interior.Color = 5296274
       Range(cel.Offset(, 11).Address, cel.Offset(, 12).Address).Interior.Color = 5296274
       Range(cel.Offset(, 13).Address, cel.Offset(, 14).Address).Interior.Color = 5296274
       Range(cel.Offset(, 15).Address, cel.Offset(, 16).Address).Interior.Color = 5296274
       Range(cel.Offset(, 17).Address, cel.Offset(, 18).Address).Interior.Color = 5296274
       Range(cel.Offset(, 19).Address, cel.Offset(, 20).Address).Interior.Color = 5296274

    End If
End With
Set cel = Nothing

End Sub

Je n'ai pas réussi à simplifier ce code.

Merci pour votre aide.

Bonsoir,

Sans voir ton fichier l'optimisation est difficile. Après tout, je t'ai donnée une solution qui correspond à ta demande. Si la solution t'a permis d'obtenir le résultat que tu veux, tant mieux.

Rechercher des sujets similaires à "selection colonnes"