cathodique
XLDnaute Barbatruc
Bonjour,
J'ai trouvé un code de Gaëtan Mourmont que vous trouverez sur la 1ère feuille.
Sur une seconde feuille, je voudrais adapter son code pour que les dimensions des 2 shapesRectangles s'adaptent à la ligne et à la colonne d’entêtes.
Vous comprendrez rapidement en ouvrant le fichier joint.
Présentement, au clic dans une cellule de la plage, un rectangle vertical apparait au-dessus de la cellule jusqu'à la 1ère ligne de la feuille
et un second horizontal à gauche de la cellule jusqu'à la 1ère colonne de la feuille. Je voudrais qu'ils s'arrêtent à la ligne et colonne de titre.
En espérant que mes explications sont claires. J'édite le code pour ceux et celles qui ne veulent pas ouvrir le fichier
Avec mes remerciements anticipés.
J'ai trouvé un code de Gaëtan Mourmont que vous trouverez sur la 1ère feuille.
Sur une seconde feuille, je voudrais adapter son code pour que les dimensions des 2 shapesRectangles s'adaptent à la ligne et à la colonne d’entêtes.
Vous comprendrez rapidement en ouvrant le fichier joint.
Présentement, au clic dans une cellule de la plage, un rectangle vertical apparait au-dessus de la cellule jusqu'à la 1ère ligne de la feuille
et un second horizontal à gauche de la cellule jusqu'à la 1ère colonne de la feuille. Je voudrais qu'ils s'arrêtent à la ligne et colonne de titre.
En espérant que mes explications sont claires. J'édite le code pour ceux et celles qui ne veulent pas ouvrir le fichier
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
' Macro créée par G.Mourmant le 01/09/2001
'http://www.polykromy.com/nl/nl6/nl6.html
'Stop
'*** Définition des variables ***
h = ActiveCell.Height
w2 = ActiveCell.Width
t = ActiveCell.Top
w = ActiveCell.Left
Debug.Print ActiveCell.Address, "h=" & h, "w2=" & w2, "t=" & t, "w=" & w
If Not Application.Intersect(Target, [D6:N20]) Is Nothing Then
'Teste si les rectangles existent déjà.
On Error Resume Next
ActiveSheet.Shapes("RectangleV").Delete
On Error Resume Next
ActiveSheet.Shapes("RectangleH").Delete
On Error GoTo 0
'Ajoute les rectangles
ActiveSheet.Shapes.AddShape(msoShapeRectangle, 0, t, w, h).Name = "RectangleH"
With ActiveSheet.Shapes("RectangleH")
.Fill.Visible = msoFalse
.Fill.Transparency = 0#
.Line.Weight = 2# '3#
.Line.ForeColor.SchemeColor = 3 '10
.ControlFormat.PrintObject = False
End With
ActiveSheet.Shapes.AddShape(msoShapeRectangle, w, 0, w2, t).Name = "RectangleV"
With ActiveSheet.Shapes("RectangleV")
.Fill.Visible = msoFalse
.Fill.Transparency = 0#
.Line.Weight = 3#
.Line.ForeColor.SchemeColor = 10
.ControlFormat.PrintObject = False
End With
End If
End Sub
Pièces jointes
Dernière édition: