Mise en forme tableau excel

Résolu

Bonjour

j'ai un tableau de 30 colonnes avec en colonnes c à I des noms et des adresses. Afin de mieux vérifier quand j'active la cellule Y25 par exemple j'ai cette macro qui memet en évidence toute la ligne correspondant.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

  Rows.Interior.ColorIndex = xlNone

  Target.EntireRow.Interior.ColorIndex = 34

  End Sub

Comment modifier cette macro pour mettre en couleur que les cellules c10 à I10 par exemple et non toute la ligne 10. Et si possible uniquement dans mon tableau prédéfini et non pas toute la feuille de calcul.

Merci pour votre aide et bonne journée

J'espère que j'ai été suffisamment clair pour que vous puiss

3 réponses

  1. Merci Danielc0

    C'est tout à fait ce que je souhaitais. Je suis navré de répondre un peu tardivement, mais je viens juste de rentrer chez moi.

    Cdlt

    mchotard

    0
    1. Bonjour,

      Pour limiter au tableau (remplace le nom du tableau):

      Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        ActiveSheet.ListObjects("Tableau1").DataBodyRange.Interior.ColorIndex = xlNone
        If Intersect(Range("Tableau1"), Target) Is Nothing Then Exit Sub
        Range("C" & Target.Row & ":I" & Target.Row).Interior.ColorIndex = 34
      End Sub
      

      Note Excel 365 dispose de la fonctionnalité "focus sur la cellule" qui peut éviter cette macro :


      0
      1. Bonjour,

        A tester 

        Private Sub Worksheet_SelectionChange(ByVal Target As Range)

            ' Supprime la couleur uniquement des colonnes C à I
            Columns("C:I").Interior.ColorIndex = xlNone
            
            ' Colore uniquement C à I sur la ligne sélectionnée
            Range("C" & Target.Row & ":I" & Target.Row).Interior.ColorIndex = 34

        End Sub

        Slts

        0