Comme le titre l'indique je cherche à faire ressortir la ligne sélectionnée d'un tableau, un TCD plus précisément, à l'aide d'une macros ou autre.
J'aimerais que la ligne ressorte en changeant la couleur de remplissage, car juste en sélectionnant toutes la ligne du tableau ça limite le reste (plus possible de sélectionner tout le tableau par exemple).
Il faudrait que quand je change de cellules sélectionnée la mise en forme disparaisse.
J'avais vu comment faire ça sur TikTok mais plus moyen de retrouver la vidéo.
Voici le code que j'utilise :
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Target.Column <= 3 Then Exit Sub
Range(Cells(Target.Row, 1), Cells(Target.Row, 3)).Select
End Sub
Celui que je suis en train de modifier (qui me retourne une erreur d'exécution 13) :
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim TCD As Variant
Set TCD = Range("A1").CurrentRegion
If Not TCD Then Exit Sub
Range(Cells(Target.Row, 1), Cells(Target.Row, 3)).Select
End Sub
Placez cette macro dans le code de la feuille contenant le TCD :
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim pt As PivotTable
For Each pt In Me.PivotTables
pt.TableRange1.Interior.ColorIndex = xlNone 'RAZ
If Not Intersect(ActiveCell, pt.TableRange1) Is Nothing Then
Intersect(ActiveCell.EntireRow, pt.TableRange1).Interior.ColorIndex = 6 'fond jaune
Exit For
End If
Next pt
End Sub
Placez cette macro dans le code de la feuille contenant le TCD :
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim pt As PivotTable
For Each pt In Me.PivotTables
pt.TableRange1.Interior.ColorIndex = xlNone 'RAZ
If Not Intersect(ActiveCell, pt.TableRange1) Is Nothing Then
Intersect(ActiveCell.EntireRow, pt.TableRange1).Interior.ColorIndex = 6 'fond jaune
Exit For
End If
Next pt
End Sub
Placez cette macro dans le code de la feuille contenant le TCD :
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim pt As PivotTable
For Each pt In Me.PivotTables
pt.TableRange1.Interior.ColorIndex = xlNone 'RAZ
If Not Intersect(ActiveCell, pt.TableRange1) Is Nothing Then
Intersect(ActiveCell.EntireRow, pt.TableRange1).Interior.ColorIndex = 6 'fond jaune
Exit For
End If
Next pt
End Sub