Couleur Bordures en VBA

Bonjour,

Voila j'ai un code pour ajouter des bordures si une cellule de la colonne "A" la ligne n'est pas vide qui marche trés bien.

J'aimerais lui ajouter la couleur des bordures en rouge et la bordures droite "Right" en pointiller

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 Then
    If Target.Column = 1 Then
        With Range("A" & Target.Row & ":H" & Target.Row) ' De la colonne A à H
            If Target.Value = "" Then 'Supprimer bordure si cellule A est vide
                .Borders(xlEdgeLeft).LineStyle = xlNone
                .Borders(xlEdgeTop).LineStyle = xlNone
                .Borders(xlEdgeRight).LineStyle = xlNone
                .Borders(xlEdgeBottom).LineStyle = xlNone
                .Borders(xlInsideVertical).LineStyle = xlNone
            Else
                .Borders(xlEdgeLeft).LineStyle = xlContinuous
                '.ColorIndex = 7

                .Borders(xlEdgeTop).LineStyle = xlContinuous
                .Borders(xlEdgeRight).LineStyle = xlContinuous
                .Borders(xlEdgeBottom).LineStyle = xlContinuous
                .Borders(xlInsideVertical).LineStyle = xlContinuous
            End If
        End With
    End If
End If
End Sub

Merci d'avance

Cordialement

Max

Bonjour

Max18 a écrit :

et la bordures droite "Right" en pointiller

J'ai considéré la dernière bordure à droite

Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Count = 1 Then
    If Target.Column = 1 Then
      With Range("A" & Target.Row & ":H" & Target.Row) ' De la colonne A à H
        If Target.Value = "" Then 'Supprimer bordure si cellule A est vide
          .Borders.LineStyle = xlNone
        Else
          .Borders.Weight = xlThin
          .Borders.ColorIndex = 3
          .Borders((xlEdgeRight)).LineStyle = xlDot
        End If
      End With
    End If
  End If
End Sub

Bonjour Banzail64

Merci d'avoir répondu.

Est il possisible d'avoir toutes les bordures de droite en pointilles?

Bonne journée

Max

Bonjour

Modifies la macro

Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Count = 1 Then
    If Target.Column = 1 Then
      With Range("A" & Target.Row & ":H" & Target.Row) ' De la colonne A à H
        If Target.Value = "" Then 'Supprimer bordure si cellule A est vide
          .Borders.LineStyle = xlNone
        Else
          .Borders.Weight = xlThin
          .Borders.ColorIndex = 3
          .Borders((xlEdgeRight)).LineStyle = xlDot
          .Borders(xlInsideVertical).LineStyle = xlDot
        End If
      End With
    End If
  End If
End Sub

Re,

Je te remercie beaucoup

Si je peux abuser quel est la ligne de code a ajouté pour avoir les lignes horizontales plus épaisses.

Bonne journée

Max

Bonjour

Une vesrion

Entourage plus épais (Si tu veux plus épais utilises XlThick) et bordures intermédiaires en pointillé

Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Count = 1 Then
    If Target.Column = 1 Then
      With Range("A" & Target.Row & ":H" & Target.Row) ' De la colonne A à H
        If Target.Value = "" Then 'Supprimer bordure si cellule A est vide
          .Borders.LineStyle = xlNone
        Else
          .Borders.Weight = xlMedium
          .Borders.ColorIndex = 3
          .Borders(xlInsideVertical).LineStyle = xlDot
        End If
      End With
    End If
  End If
End Sub

Re,

Je te remercie beaucoup vraiment super.

Je pensais que l'on pouvez mettre un épaisseur que l'on désirer par un "epaisseur= 4"?

Bonne journée

Max

Bonjour

Max18 a écrit :

Je pensais que l'on pouvez mettre un épaisseur que l'on désirer par un "epaisseur= 4"?

Je ne le crois pas

Il n'y a (excel 2003) que 3 épaisseurs

xlThin

XkMedium

XlThick

Re,

Je te remercie beaucoup du temps passer

@+

Max

Rechercher des sujets similaires à "couleur bordures vba"