Voilà, je voudrais tracer 1 ligne horizontale dans 1 cellule (la barrer en
quelque sorte).
Seulement le choix de la cellule dépend de son contenu (= vide) selon 1
macro.
Pouvez-vous m'aider ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jean-François Aubert
Salut capkurk,
Quelque chose comme ceci devrait faire l'affaire.
- A placer dans le module de la feuille adéquate. - Adapter la plage de cellule : Range("A1:C3") - Une cellule contenant qu'un ou des espace(s) est considérée comme non-vide
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("A1:C3")) Is Nothing And Target.Value = 0 Then With Target x0 = .Left x1 = .Left + .Width y0 = .Top + 0.5 * .Height End With ActiveSheet.Lines.Add(x0, y0, x1, y0).Select End If End Sub
-- Amicalement
Jean-François Aubert {Vaudois de la Côte Lémanique}
"capkurk" a écrit dans le message de news:eN7v%
Bonjour à tous,
Voilà, je voudrais tracer 1 ligne horizontale dans 1 cellule (la barrer en quelque sorte). Seulement le choix de la cellule dépend de son contenu (= vide) selon 1 macro. Pouvez-vous m'aider ?
Merci bien
Salut capkurk,
Quelque chose comme ceci devrait faire l'affaire.
- A placer dans le module de la feuille adéquate.
- Adapter la plage de cellule : Range("A1:C3")
- Une cellule contenant qu'un ou des espace(s) est considérée comme non-vide
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C3")) Is Nothing And Target.Value = 0 Then
With Target
x0 = .Left
x1 = .Left + .Width
y0 = .Top + 0.5 * .Height
End With
ActiveSheet.Lines.Add(x0, y0, x1, y0).Select
End If
End Sub
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"capkurk" <nospam-patrick.chretien9@wanadoo.fr> a écrit dans le message de
news:eN7v%23uLdEHA.3732@TK2MSFTNGP11.phx.gbl...
Bonjour à tous,
Voilà, je voudrais tracer 1 ligne horizontale dans 1 cellule (la barrer en
quelque sorte).
Seulement le choix de la cellule dépend de son contenu (= vide) selon 1
macro.
Pouvez-vous m'aider ?
- A placer dans le module de la feuille adéquate. - Adapter la plage de cellule : Range("A1:C3") - Une cellule contenant qu'un ou des espace(s) est considérée comme non-vide
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("A1:C3")) Is Nothing And Target.Value = 0 Then With Target x0 = .Left x1 = .Left + .Width y0 = .Top + 0.5 * .Height End With ActiveSheet.Lines.Add(x0, y0, x1, y0).Select End If End Sub
-- Amicalement
Jean-François Aubert {Vaudois de la Côte Lémanique}
"capkurk" a écrit dans le message de news:eN7v%
Bonjour à tous,
Voilà, je voudrais tracer 1 ligne horizontale dans 1 cellule (la barrer en quelque sorte). Seulement le choix de la cellule dépend de son contenu (= vide) selon 1 macro. Pouvez-vous m'aider ?
Merci bien
garnote
Salut capkurk,
Ai-je bien compris ?
Sub Ligne_Horizontale_Dans_Cellules_Vides() For Each c In Selection If IsEmpty(c) Then dx = c.Left dy = c.Top + c.Height / 2 fx = dx + c.Width fy = dy Set LH = ActiveSheet.Shapes.AddLine(dx, dy, fx, fy) LH.Line.Weight = 2 End If Next End Sub
Et si tu ne tiens pas à une ligne horizontale, tu pourrais utiliser Format / Cellule... / Bordure : trait oblique de haut en bas.
Serge
"capkurk" a écrit dans le message de news:eN7v%
Bonjour à tous,
Voilà, je voudrais tracer 1 ligne horizontale dans 1 cellule (la barrer en quelque sorte). Seulement le choix de la cellule dépend de son contenu (= vide) selon 1 macro. Pouvez-vous m'aider ?
Merci bien
Salut capkurk,
Ai-je bien compris ?
Sub Ligne_Horizontale_Dans_Cellules_Vides()
For Each c In Selection
If IsEmpty(c) Then
dx = c.Left
dy = c.Top + c.Height / 2
fx = dx + c.Width
fy = dy
Set LH = ActiveSheet.Shapes.AddLine(dx, dy, fx, fy)
LH.Line.Weight = 2
End If
Next
End Sub
Et si tu ne tiens pas à une ligne horizontale, tu pourrais
utiliser Format / Cellule... / Bordure :
trait oblique de haut en bas.
Serge
"capkurk" <nospam-patrick.chretien9@wanadoo.fr> a écrit dans le message de
news:eN7v%23uLdEHA.3732@TK2MSFTNGP11.phx.gbl...
Bonjour à tous,
Voilà, je voudrais tracer 1 ligne horizontale dans 1 cellule (la barrer en
quelque sorte).
Seulement le choix de la cellule dépend de son contenu (= vide) selon 1
macro.
Pouvez-vous m'aider ?
Sub Ligne_Horizontale_Dans_Cellules_Vides() For Each c In Selection If IsEmpty(c) Then dx = c.Left dy = c.Top + c.Height / 2 fx = dx + c.Width fy = dy Set LH = ActiveSheet.Shapes.AddLine(dx, dy, fx, fy) LH.Line.Weight = 2 End If Next End Sub
Et si tu ne tiens pas à une ligne horizontale, tu pourrais utiliser Format / Cellule... / Bordure : trait oblique de haut en bas.
Serge
"capkurk" a écrit dans le message de news:eN7v%
Bonjour à tous,
Voilà, je voudrais tracer 1 ligne horizontale dans 1 cellule (la barrer en quelque sorte). Seulement le choix de la cellule dépend de son contenu (= vide) selon 1 macro. Pouvez-vous m'aider ?