Modification couleur tableaux par macro

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

kadelmalin

XLDnaute Occasionnel
Bonjour,
Sans recourir à la MEFC est il possible de concevoir une petite macro qui modifie la couleur du tracé d'un tableau dans une feuille. Je joins un classeur cobaye. Merci.
 

Pièces jointes

Re : Modification couleur tableaux par macro

Bonjour,

un peu plus complet 🙂 :
Code:
Sub couleurEncadrement()
    Dim c As Range
    For Each c In ActiveSheet.UsedRange
        If Not c.Borders(xlEdgeLeft).LineStyle = xlNone Then
            c.Borders(xlEdgeLeft).Color = 16711680
        End If
        If Not c.Borders(xlEdgeRight).LineStyle = xlNone Then
            c.Borders(xlEdgeRight).Color = 16711680
        End If
        If Not c.Borders(xlEdgeTop).LineStyle = xlNone Then
            c.Borders(xlEdgeTop).Color = 16711680
        End If
        If Not c.Borders(xlEdgeBottom).LineStyle = xlNone Then
            c.Borders(xlEdgeBottom).Color = 16711680
        End If
        If Not c.Borders(xlInsideVertical).LineStyle = xlNone Then
            c.Borders(xlInsideVertical).Color = 16711680
        End If
        If Not c.Borders(xlInsideHorizontal).LineStyle = xlNone Then
            c.Borders(xlEdgeLeft).Color = 16711680
        End If
    Next c
End Sub
eric
 
Re : Modification couleur tableaux par macro

Bonjour à toutes et à tous,

Une autre possibilité :

Code:
Option Explicit
Sub Quadrillage_couleur()
    Dim c As Range
    Application.ScreenUpdating = False
    For Each c In Range("a1:g50")
        If c.Borders(xlEdgeLeft).LineStyle <> xlNone Then c.Borders(xlEdgeLeft).ColorIndex = 5
        If c.Borders(xlEdgeRight).LineStyle <> xlNone Then c.Borders(xlEdgeRight).ColorIndex = 5
        If c.Borders(xlInsideVertical).LineStyle <> xlNone Then c.Borders(xlInsideVertical).ColorIndex = 5
        If c.Borders(xlInsideHorizontal).LineStyle <> xlNone Then c.Borders(xlInsideHorizontal).ColorIndex = 5
        If c.Borders(xlEdgeTop).LineStyle <> xlNone Then c.Borders(xlEdgeTop).ColorIndex = 5
        If c.Borders(xlEdgeBottom).LineStyle <> xlNone Then c.Borders(xlEdgeBottom).ColorIndex = 5
    Next
    Application.ScreenUpdating = True
End Sub

A bientôt 🙂
 
Re : Modification couleur tableaux par macro

Bonjour.
Si par "tracé" vous entendez la couleur des bordures dont la couleur est celle par défaut, cette dernière est aussi celle du quadrillage, et elle se met en bleu par cette instruction :
VB:
ActiveWindow.GridlineColor = RGB(0, 0, 255)
J'ai aussi eu beaucoup de mal à trouver comment on change ça manuellement sur Excel 2016.
 
Dernière édition:
Re : Modification couleur tableaux par macro

Merci à vous tous ! toutes vos interventions sont impeccables et elles seront encore plus excellentes si j'arriverais à avoir les pointillés avec un bleu plus fade. Merci mille fois mes amis.
 
Re : Modification couleur tableaux par macro

Re bonjour,
J'ai tenté de modifier c.Borders(xlInsideHorizontal).ColorIndex = 5 par c.Borders(xlInsideHorizontal).ColorIndex = 28 pour avoir le trait pointillé d'une autre couleur mais ça n'a rien donné; je crois que je me suis planté !
 
Re : Modification couleur tableaux par macro

Re,

Code:
Sub couleurEncadrement()
    Dim c As Range, couleur1 As Long, couleur2 As Long, position As Long
    couleur1 = &HC00000
    couleur2 = &HFFFFA0
    Application.ScreenUpdating = False
    For Each c In ActiveSheet.UsedRange
        For position = 7 To 12
            With c.Borders(position)
                If .LineStyle = xlContinuous Then
                    If .Weight = xlHairline Then
                        .Color = couleur2
                    Else
                        .Color = couleur1
                    End If
                End If
            End With
        Next position
    Next c
End Sub
 
Re : Modification couleur tableaux par macro

Bonjour,
Eric ton code marche à merveille mais une fois la feuille insérée dans le classeur il tourne en rond ce qui m'oblige à avorter l'opération. J'ai même désigné la plage concernée par la modification sans résultat. Y a-t-il quelque chose dans le code qui le ralentit ?
 

Pièces jointes

  • CD_Bordure.jpg
    CD_Bordure.jpg
    129.5 KB · Affichages: 53
- 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

  • Question Question
XL 2021 Macro
Réponses
6
Affichages
243
Réponses
4
Affichages
290
Réponses
4
Affichages
153
Réponses
12
Affichages
404
Réponses
5
Affichages
365
Retour