Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

VBA : Formatage conditionnel Trait Gras ?

8 réponses
Avatar
Domi
Bonsoir à tous,

Via l'enregistreur, j'ai fais une petite macro qui est sensée tracer un
trait gras sous chaque cellule de la colonne A qui contient une valeur
jusqu'à la colonne E.
Hélas, sauf erreur de ma part le formatage conditionnel ne le permet
pas.(j'ai xlthin que je ne parviens pas à remplacer par quoique ce soit...)
Comment par VBA, tracer un trait gras sous chaque cellule de la plage
A7:E50,quand la cellule de la colonne A contient une valeur ?
Merci pour votre aide
Domi

8 réponses

Avatar
LSteph
Bonjour Domi,
j'entends donc ici par contient une valeur , différent de rien, sinon on
peut adapter, valeur,entier, long,integer,décimal, date ,texte, formule...

Sub souligrA()
Dim c As Range
Application.ScreenUpdating = False
For Each c In Range("e1:" & [a65536].End(xlUp).Address).Rows
If c.Cells(1) <> "" Then
With c.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = 3
End With
End If
Next

End Sub

'lSteph

Domi a écrit :
Bonsoir à tous,

Via l'enregistreur, j'ai fais une petite macro qui est sensée tracer un
trait gras sous chaque cellule de la colonne A qui contient une valeur
jusqu'à la colonne E.
Hélas, sauf erreur de ma part le formatage conditionnel ne le permet
pas.(j'ai xlthin que je ne parviens pas à remplacer par quoique ce soit...)
Comment par VBA, tracer un trait gras sous chaque cellule de la plage
A7:E50,quand la cellule de la colonne A contient une valeur ?
Merci pour votre aide
Domi





Avatar
LSteph
... et si on refait après modif:

Sub souligrA()
Dim c As Range
Application.ScreenUpdating = False
For Each c In Range("e1:" & [a65536].End(xlUp).Address).Rows

With c.Borders(xlEdgeBottom)
If c.Cells(1) <> "" Then
.LineStyle = xlContinuous
.Weight = 3
Else
.LineStyle = xlLineStyleNone
End If
End With
Next

End Sub

'lSteph


Domi a écrit :
Bonsoir à tous,

Via l'enregistreur, j'ai fais une petite macro qui est sensée tracer un
trait gras sous chaque cellule de la colonne A qui contient une valeur
jusqu'à la colonne E.
Hélas, sauf erreur de ma part le formatage conditionnel ne le permet
pas.(j'ai xlthin que je ne parviens pas à remplacer par quoique ce soit...)
Comment par VBA, tracer un trait gras sous chaque cellule de la plage
A7:E50,quand la cellule de la colonne A contient une valeur ?
Merci pour votre aide
Domi





Avatar
Domi
Tu a bien entendu ! et je te remercie pour ton aide.
Domi

"LSteph" a écrit dans le message de news:

Bonjour Domi,
j'entends donc ici par contient une valeur , différent de rien, sinon on
peut adapter, valeur,entier, long,integer,décimal, date ,texte, formule...

Sub souligrA()
Dim c As Range
Application.ScreenUpdating = False
For Each c In Range("e1:" & [a65536].End(xlUp).Address).Rows
If c.Cells(1) <> "" Then
With c.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = 3
End With
End If
Next

End Sub

'lSteph

Domi a écrit :
Bonsoir à tous,

Via l'enregistreur, j'ai fais une petite macro qui est sensée tracer un
trait gras sous chaque cellule de la colonne A qui contient une valeur
jusqu'à la colonne E.
Hélas, sauf erreur de ma part le formatage conditionnel ne le permet
pas.(j'ai xlthin que je ne parviens pas à remplacer par quoique ce
soit...)
Comment par VBA, tracer un trait gras sous chaque cellule de la plage
A7:E50,quand la cellule de la colonne A contient une valeur ?
Merci pour votre aide
Domi






Avatar
Mgr.Abile
Bonsoir,
Une solution parmi d'autres, dans le module de feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
r = Target.Row
If Not Intersect(Target, Range("a:a")) Is Nothing Then
If Cells(r, 1).Value <> "" Then
With Range("a" & r & ":e" & r).Borders(xlBottom)
.Weight = xlThick
.ColorIndex = 3
End With
Else
Range("a" & r & ":e" & r).Borders(xlEdgeBottom) _
.LineStyle = xlNone
End If
End If
End Sub

--
News://news.microsoft.com/microsoft.public.fr.excel
Allez en paix
T.Abile
"Domi" a écrit dans le message de
news:
Bonsoir à tous,

Via l'enregistreur, j'ai fais une petite macro qui est sensée tracer un
trait gras sous chaque cellule de la colonne A qui contient une valeur
jusqu'à la colonne E.
Hélas, sauf erreur de ma part le formatage conditionnel ne le permet
pas.(j'ai xlthin que je ne parviens pas à remplacer par quoique ce
soit...)
Comment par VBA, tracer un trait gras sous chaque cellule de la plage
A7:E50,quand la cellule de la colonne A contient une valeur ?
Merci pour votre aide
Domi





Avatar
Philippe.R
Bonsoir,
Sans être particulièrement habile, je proposerais bien :

Private Sub Worksheet_Change(ByVal Target As Range)
r = Target.Row
If Not Intersect(Target, Range("a:a")) Is Nothing Then
If Cells(r, 1).Value <> "" Then
With Range("a" & r & ":e" & r).Borders(xlBottom)
.Weight = xlThick
.ColorIndex = 3
End With
Else
Range("a" & r & ":e" & r).Borders(xlEdgeBottom) _
.LineStyle = xlNone
End If
End If
End Sub
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Domi" a écrit dans le message de
news:
Bonsoir à tous,

Via l'enregistreur, j'ai fais une petite macro qui est sensée tracer un
trait gras sous chaque cellule de la colonne A qui contient une valeur
jusqu'à la colonne E.
Hélas, sauf erreur de ma part le formatage conditionnel ne le permet
pas.(j'ai xlthin que je ne parviens pas à remplacer par quoique ce
soit...)
Comment par VBA, tracer un trait gras sous chaque cellule de la plage
A7:E50,quand la cellule de la colonne A contient une valeur ?
Merci pour votre aide
Domi





Avatar
LSteph
...les nombereux amis font bien d'en parler
(surtout Abile et philippe .. :o)))

je pensais aussi au WorkSheet_change
mais comme tu ne le sollicitais pas, autant l'éviter sauf
si c'est vraiment indispensable d'automatiser parceque

ça mobilise inutilement un balayage de cellule à chaque changement de valeur
ou
si on opte pour des formules en A et ainsi un Calculate .. à chaque
recalcul.

@+

--
lSteph


Domi a écrit :
Tu a bien entendu ! et je te remercie pour ton aide.
Domi

"LSteph" a écrit dans le message de news:

Bonjour Domi,
j'entends donc ici par contient une valeur , différent de rien, sinon on
peut adapter, valeur,entier, long,integer,décimal, date ,texte, formule...

Sub souligrA()
Dim c As Range
Application.ScreenUpdating = False
For Each c In Range("e1:" & [a65536].End(xlUp).Address).Rows
If c.Cells(1) <> "" Then
With c.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = 3
End With
End If
Next

End Sub

'lSteph

Domi a écrit :
Bonsoir à tous,

Via l'enregistreur, j'ai fais une petite macro qui est sensée tracer un
trait gras sous chaque cellule de la colonne A qui contient une valeur
jusqu'à la colonne E.
Hélas, sauf erreur de ma part le formatage conditionnel ne le permet
pas.(j'ai xlthin que je ne parviens pas à remplacer par quoique ce
soit...)
Comment par VBA, tracer un trait gras sous chaque cellule de la plage
A7:E50,quand la cellule de la colonne A contient une valeur ?
Merci pour votre aide
Domi









Avatar
Mgr.Abile
Ah, mon fils, ne parlez pas de ce coquin de Philippe.R, qui n'est qu'un vil
plagiat !
--
News://news.microsoft.com/microsoft.public.fr.excel
Allez en paix
T.Abile
"LSteph" a écrit dans le message de
news:%23p$
...les nombereux amis font bien d'en parler
(surtout Abile et philippe .. :o)))

je pensais aussi au WorkSheet_change
mais comme tu ne le sollicitais pas, autant l'éviter sauf
si c'est vraiment indispensable d'automatiser parceque

ça mobilise inutilement un balayage de cellule à chaque changement de
valeur
ou
si on opte pour des formules en A et ainsi un Calculate .. à chaque
recalcul.

@+

--
lSteph


Domi a écrit :
Tu a bien entendu ! et je te remercie pour ton aide.
Domi

"LSteph" a écrit dans le message de news:

Bonjour Domi,
j'entends donc ici par contient une valeur , différent de rien, sinon on
peut adapter, valeur,entier, long,integer,décimal, date ,texte,
formule...

Sub souligrA()
Dim c As Range
Application.ScreenUpdating = False
For Each c In Range("e1:" & [a65536].End(xlUp).Address).Rows
If c.Cells(1) <> "" Then
With c.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = 3
End With
End If
Next

End Sub

'lSteph

Domi a écrit :
Bonsoir à tous,

Via l'enregistreur, j'ai fais une petite macro qui est sensée tracer un
trait gras sous chaque cellule de la colonne A qui contient une valeur
jusqu'à la colonne E.
Hélas, sauf erreur de ma part le formatage conditionnel ne le permet
pas.(j'ai xlthin que je ne parviens pas à remplacer par quoique ce
soit...)
Comment par VBA, tracer un trait gras sous chaque cellule de la plage
A7:E50,quand la cellule de la colonne A contient une valeur ?
Merci pour votre aide
Domi











Avatar
Fredo P
"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de news:

Bonsoir,
Sans être particulièrement habile, je proposerais bien :


Cela ressemble à Dupont et Pondu

Private Sub Worksheet_Change(ByVal Target As Range)
r = Target.Row
If Not Intersect(Target, Range("a:a")) Is Nothing Then
If Cells(r, 1).Value <> "" Then
With Range("a" & r & ":e" & r).Borders(xlBottom)
.Weight = xlThick
.ColorIndex = 3
End With
Else
Range("a" & r & ":e" & r).Borders(xlEdgeBottom) _
.LineStyle = xlNone
End If
End If
End Sub
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Domi" a écrit dans le message de
news:
Bonsoir à tous,

Via l'enregistreur, j'ai fais une petite macro qui est sensée tracer un
trait gras sous chaque cellule de la colonne A qui contient une valeur
jusqu'à la colonne E.
Hélas, sauf erreur de ma part le formatage conditionnel ne le permet
pas.(j'ai xlthin que je ne parviens pas à remplacer par quoique ce
soit...)
Comment par VBA, tracer un trait gras sous chaque cellule de la plage
A7:E50,quand la cellule de la colonne A contient une valeur ?
Merci pour votre aide
Domi