Compilation Codes
Bonsoir à tous,
J'ai ce code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ecran
Set ecran = ActiveWindow.VisibleRange
With ActiveSheet
Shapes("Image A").Left = ecran.Left + 2963 ' adapter le nom de l'image et les dimensions
Shapes("Image A").Top = ecran.Top + 20
Shapes("Image B").Left = ecran.Left + 2963 ' adapter le nom de l'image et les dimensions
Shapes("Image B").Top = ecran.Top + 125
Shapes("Image C").Left = ecran.Left + 2963 ' adapter le nom de l'image et les dimensions
Shapes("Image C").Top = ecran.Top + 230
Shapes("Image D").Left = ecran.Left + 2963 ' adapter le nom de l'image et les dimensions
Shapes("Image D").Top = ecran.Top + 335
Shapes("Image E").Left = ecran.Left + 2963 ' adapter le nom de l'image et les dimensions
Shapes("Image E").Top = ecran.Top + 440
Shapes("Image F").Left = ecran.Left + 2963 ' adapter le nom de l'image et les dimensions
Shapes("Image F").Top = ecran.Top + 545
Shapes("Image G").Left = ecran.Left + 2963 ' adapter le nom de l'image et les dimensions
Shapes("Image G").Top = ecran.Top + 650
Shapes("Image H").Left = ecran.Left + 2966 ' adapter le nom de l'image et les dimensions
Shapes("Image H").Top = ecran.Top + 652
Shapes("Rectangle I").Left = ecran.Left + 315 ' adapter le nom de l'image et les dimensions
Shapes("Rectangle I").Top = ecran.Top + 10
Shapes("Rectangle J").Left = ecran.Left + 315 ' adapter le nom de l'image et les dimensions
Shapes("Rectangle J").Top = ecran.Top + 40
End With
End SubJ'aimerais mettre en surbrillance la cellule sélectionnée avec ce code:
Option Explicit
Public rngOldCell As Range
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If rngOldCell Is Nothing Then
Set rngOldCell = Target
Exit Sub
End If
ActiveCell.Select
Selection.Interior.Color = RGB(117, 47, 217)
rngOldCell.Interior.Pattern = xlNone
Set rngOldCell = Target
End SubMais il faut compiler ces 2 codes, et je ne sais pas.
Pour la surbrillance, il y a peut-être une autre solution qui consisterait à déplacer un rectangle sur la cellule sélectionnée, comme sur l'image.
Je vous remercie beaucoup pour votre aide, en vous souhaitant de bonnes fêtes à toutes et tous !!!
bonjour oNnO,
une combinaison des 2
on peut positionner vos shapes aussi dans une cellule spécifique, par exemple avec .shapes("Image A").top = .range("H61").top +1, etc
Option Explicit
Public rngOldCell As Range
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With Target
If Not rngOldCell Is Nothing Then rngOldCell.Interior.Pattern = xlNone
.Interior.Color = RGB(117, 47, 217)
Set rngOldCell = Target
End With
Dim ecran
Set ecran = ActiveWindow.VisibleRange
With ActiveSheet
.Shapes("Image A").Left = ecran.Left + 2963 ' adapter le nom de l'image et les dimensions
.Shapes("Image A").Top = ecran.Top + 20
.Shapes("Image B").Left = ecran.Left + 2963 ' adapter le nom de l'image et les dimensions
.Shapes("Image B").Top = ecran.Top + 125
.Shapes("Image C").Left = ecran.Left + 2963 ' adapter le nom de l'image et les dimensions
.Shapes("Image C").Top = ecran.Top + 230
.Shapes("Image D").Left = ecran.Left + 2963 ' adapter le nom de l'image et les dimensions
.Shapes("Image D").Top = ecran.Top + 335
.Shapes("Image E").Left = ecran.Left + 2963 ' adapter le nom de l'image et les dimensions
.Shapes("Image E").Top = ecran.Top + 440
.Shapes("Image F").Left = ecran.Left + 2963 ' adapter le nom de l'image et les dimensions
.Shapes("Image F").Top = ecran.Top + 545
.Shapes("Image G").Left = ecran.Left + 2963 ' adapter le nom de l'image et les dimensions
.Shapes("Image G").Top = ecran.Top + 650
.Shapes("Image H").Left = ecran.Left + 2966 ' adapter le nom de l'image et les dimensions
.Shapes("Image H").Top = ecran.Top + 652
.Shapes("Rectangle I").Left = ecran.Left + 315 ' adapter le nom de l'image et les dimensions
.Shapes("Rectangle I").Top = ecran.Top + 10
.Shapes("Rectangle J").Left = ecran.Left + 315 ' adapter le nom de l'image et les dimensions
.Shapes("Rectangle J").Top = ecran.Top + 40
End With
End Subre,
que voulez-vous faire avec l'ancienne sélection ?
With Target
If Not rngOldCell Is Nothing Then rngOldCell.Interior.color = rgb(255,0,0) '>>>> l'ancien target devient rouge !
.Interior.Color = RGB(117, 47, 217)'>>>nouveau target, ce couleur
Set rngOldCell = Target
End With
Incroyable ! C'est exactement cela ! Merci beaucoup !
Juste une derniére chose. Comment exclure cette surbrillance à partir de la colonne R ?
Merci !
