Ligne active en surbrillance

Résolu/Fermé
nathalieayala Messages postés 11 Date d'inscription dimanche 7 juin 2015 Statut Membre Dernière intervention 8 janvier 2017 - Modifié par pijaku le 8/06/2015 à 10:05
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 7 juin 2015 à 22:13
Bonjour à tous,
Je me présente, je m'appelle Nathalie, je suis nouvelle et novice :-)
Je débute en excel, j'ai bien intégré la plupart des fonctions basiques mais à présent que je rentre dans le vif du sujet c'est là que les choses se corsent.

J'ai cherché une macro sur le net me permettant dans un tableau de mettre en surbrillance la ligne de la cellule active, j'ai presque trouvé mon bonheur dans celle ci :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim iR As Long
Application.ScreenUpdating = False
iR = ActiveCell.Row
Columns("A:E").Interior.ColorIndex = xlNone
Range("A" & iR & ":E" & iR) _
.Interior.ColorIndex = 3
End Sub


Elle me va très bien, j'ai même pu élargir le champs des colonnes que je souhaitais.
Mon problème vient du fait que je ne sais pas y inclure une sélection de ligne, du coup je perds la couleur des cellules titres de mon tableau.

Serait il possible à quelqu'un de m'aider en gardant le propriétés de cette macro mais de la faire débuter de la ligne 2 à une autre ligne sélectionnée qui serait celle de la fin de mon tableau (ligne 2 à 32 par exemple).

Je remercie par avance toutes les personnes qui s'attarderont sur mon problème.

Bonne journée à tous.
A voir également:

1 réponse

Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 779
Modifié par Patrice33740 le 7/06/2015 à 17:33
Bonjour et bienvenue sur le Forum,

Essaies ce code pour colorer la ligne active de la feuille sauf la première :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  'Dans la plage de cellules utilisée ...
  With Me.UsedRange.Rows
    '... sauf la première ligne
    With .Offset(1).Resize(.Count - 1)
      ' - effacer la couleur
      .Interior.ColorIndex = xlNone
      ' - si la cellule active n'est pas dans cette plage : terminé
      If Intersect(Target, .Cells) Is Nothing Then Exit Sub
      ' - sinon : changer la couleur de la ligne
      Intersect(Target.EntireRow, .Cells).Interior.ColorIndex = 3
    End With
  End With
End Sub



Cordialement
Patrice
1
nathalieayala Messages postés 11 Date d'inscription dimanche 7 juin 2015 Statut Membre Dernière intervention 8 janvier 2017
7 juin 2015 à 18:06
Bonsoir Patrice,

Comme tu le dis si bien "c'est facile quand on connaît la réponse...."
Alors ton code marche à la perfection merci, je t'en suis très reconnaissante.

Mais comme en informatique le kiff c'est qu'une solution engendre toujours un nouveau problème, voilà ce qui arrive.

Je dois certainement omettre d'enregistrer ou de faire une quelconque manipulation car quand je veux enregistrer mon classeur, il me dit que c'est impossible de le faire comme avant car il faut à présent l'enregistrer sur un format excel qui supporte les macros. Jusque là ça va je suis..... J'enregistre donc une nouvelle version de mon classeur sur bureau au format Microsoft Excel Macro-Enabled Worksheet (.xlsm) mais du coup quand je le réouvre, la macro n'est plus active, elle est toujours dans l'éditeur mais n'opère plus. De plus dans chaque onglet, la dernière ligne ayant été mise en surbrillance avant la fermeture reste figée dans sa couleur alors que la cellule active se balade en mode classique :-) .......

Que n'ai je donc pas fait qu'il aurait fallu faire pour mettre ton savoir en pratique ?
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 779
7 juin 2015 à 19:10
Bonjour,

Il faut autoriser l'exécution des macros : Options Excel / Centre de gestion de la confidentialité / Paramètre du ... / Paramètre des macros
0
nathalieayala Messages postés 11 Date d'inscription dimanche 7 juin 2015 Statut Membre Dernière intervention 8 janvier 2017
7 juin 2015 à 19:28
Vous êtes un ange ...........
Je ne sais pas où vous résidez mais si un jour vous passiez par Nice, faites moi signe, je vous offrirai volontiers un café !!!!
Cela fait 4 jours que je planchais là dessus et vous en un coup de baguette magique vous solutionnez mon problème.....
Je vous suis d'une profonde reconnaissance.
Merci infiniment
Nathalie
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 779
7 juin 2015 à 22:13
De rien, au plaisir de te relire sur le Forum

Cordialement
Patrice
0