[VIDEO]Comment surligner la ligne de la cellule sélectionnée

Dans ce nouveau tutoriel, nous allons répondre à une question qui revient souvent : comment mettre en évidence la ligne dans laquelle se trouve la cellule sélectionnée. Nous allons voir deux méthodes qui vont permettent d’arriver au même résultat attendu. Ces deux techniques avancées, ont l’avantage de préserver la mise en forme d’origine du classeur lorsqu’une nouvelle ligne est sélectionnée :

 

 

Vous pouvez télécharger le fichier d'exemple de cet article en cliquant sur le lien suivant :

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
 

 

1. Première méthode

 

Cette première méthode est la plus simple à mettre en place. Elle va consister à stocker le numéro de la ligne sélectionnée, puis d’appliquer une mise en forme conditionnelle sur la ligne concernée.

Nous allons donc procéder de la manière suivante :

  • Nous sélectionnons une cellule vide du classeur, en cliquant simplement dessus (par exemple la cellule située aux coordonnées « G1 », comme le montre l’illustration ci-dessous),

Excel formation - Comment surligner la ligne active - 01

  • Puis nous lui donnons un nom simple, que nous réutiliserons par la suite. Pour donner un nom à une cellule, il suffit de le saisir dans la zone de nom en haut à gauche. Ne pas oublier de valider en appuyant sur la touche [Entrée] du clavier. Dans notre exemple, donnons le noms « _maLigne » à la cellule « G1 »,

Excel formation - Comment surligner la ligne active - 02

  • Pour l’exemple, nous allons donner le numéro d’une ligne comme valeur pour cette cellule (nous verrons juste après comment modifier automatiquement la valeur de la cellule). Par exemple la ligne 6

Excel formation - Comment surligner la ligne active - 03

À présent, nous disposons d’une cellule que nous pouvons appeler simplement (« =_maLigne ») et qui contient le numéro de la ligne que nous souhaitons mettre en surbrillance.

Pour ce faire, nous allons utiliser la fonctionnalité de mise-en-forme conditionnelle d’Excel, qui comme son nom l’indique clairement permet de personnaliser les paramètres de mise-en-forme d’une ou plusieurs cellules lorsqu’une ou plusieurs conditions sont effectivement remplies :

  • Commençons par sélectionner les cellules sur lesquelles se trouve les lignes que nous souhaitons surligner. Pour cela, il suffit de placer le curseur sur la première d’entre elles, puis de faire glisser la souris jusqu’à sélectionner toutes les cellules

Excel formation - Comment surligner la ligne active - 04

  • Pour sélectionner plusieurs groupes de cellules (par exemple pour sélectionner nos quatre tableaux), il suffit de garder la touche [Ctrl] du clavier en foncée, puis de sélectionner chacune des différentes zones, sans relâcher ce dernier

Excel formation - Comment surligner la ligne active - 05

  • Pour insérer la mise-en-forme conditionnelle, rendez-vous dans l’onglet Accueil du ruban, puis cliquez sur Mise en forme conditionnelle > Nouvelle règle

Excel formation - Comment surligner la ligne active - 06

  • Dans la fenêtre qui s’affiche, choisissez l’option « Utiliser une formule pour déterminer pour quelles cellules le format sera appliqué »

Excel formation - Comment surligner la ligne active - 07

  • Puis saisissez la formule suivante, comme le montre l’illustration ci-dessus : « =LIGNE(E18)=_maLigne ». Remplacez les coordonnées de la cellule par celles de la cellule sélectionnée (vous retrouverez ces coordonnées dans la zone de nom en haut à gauche),
  • Puis cliquez sur le bouton Format… afin de personnaliser la mise en forme que nous souhaitons appliquer, en choisissant par exemple un fond de couleur bleu foncé et une police de caractères blanche :

Excel formation - Comment surligner la ligne active - 08

  • Enfin, vous pouvez valider en appuyant sur les deux boutons [OK] successifs

À présent, vous pourrez constater que la ligne dont le numéro correspond à la valeur de la cellule _maLigne possède un fond de couleur bleu

Excel formation - Comment surligner la ligne active - 09

Changez la valeur de cette cellule et la ligne en surbrillance va elle aussi être modifiée :

Excel formation - Comment surligner la ligne active - 10

La dernière opération à mettre en place pour cette première méthode va consister à modifier automatiquement la valeur contenue dans la cellule « _maLigne » avec le numéro de la ligne contenant la cellule sélectionnée.

Pour cela, nous allons insérer un petit bout de macro-commande en VBA dans le code de la feuille de calcul :

  • Commençons par effectuer un clic-droit sur l’onglet de la feuille de calcul, afin de sélectionner l’option « Visualiser le code » :

Excel formation - Comment surligner la ligne active - 11

  • Cela permet d’ouvrir l’outil de développement des macro-commandes d’Excel (VBA) directement sur le code de la feuille de calcul (attention, le code que nous allons saisir ne sera accessible que depuis cette feuille de calcul)

Excel formation - Comment surligner la ligne active - 12

  • La commande que nous allons saisir devra être lancée automatiquement par Excel à chaque fois que l’utilisateur va sélectionner une cellule. Nous allons donc insérer notre code à l’intérieur d’une procédure évènementielle
  • Dans le menu déroulant situé au-dessus de la zone de saisie du code, nous allons sélectionner « Worksheet », puis dans le second menu « SelectionChange »

Excel formation - Comment surligner la ligne active - 13

  • Excel va allors aujouter automatiquement une procédure portant le nom de « Worksheet_SelectionChange(ByVal Target As Range) ». Il s’agit d’un évènement qui sera lancé à chaque fois qu’une nouvelle cellule va être sélectionnée. La cellule sélectionnée va être retournée dans la variable « Target ».
  • Pour insérer le numéro de la ligne sélectionnée dans la cellule _maLigne, nous allons uniquement insérer la ligne de code suivante dans cette procédure :

Excel formation - Comment surligner la ligne active - 14

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Range("_maLigne") = ActiveCell.Row
End Sub

Vous pouvez maintenant tester de sélectionner une cellule pour constater que la ligne en surbrillance va maintenant s’adapter à la cellule sélectionnée.

Excel formation - Comment surligner la ligne active - 15

 

2. Seconde méthode « Full VBA »

 

Dans cette seconde méthode, l’ensemble de la logique va être intégrée dans la procédure évènementielle de VBA afin de pouvoir s’adapter à tous les cas de figure auxquels nous allons pouvoir être confronté.

Pour commencer, nous allons supprimer les éléments que nous avons mis en place dans la première partie :

  • Suppression de la cellule _maLigne : sélectionnez la cellule, puis à l’aide du menu contextuel qui s’affiche lorsque l’on effectue un clic-droit sur celle-ci, choisissez « Supprimer… » :

Excel formation - Comment surligner la ligne active - 16

  • Dans la fenêtre suivante, optez pour l’option « Décaler les cellules vers la gauche », puis validez en cliquant sur le bouton [OK] :

Excel formation - Comment surligner la ligne active - 17

  • Suppression de la mise-en-forme conditionnelle : Dans menu Accueil du ruban, rendez-vous dans « Mise en forme conditionnelle » > « Gérer les règles… »

Excel formation - Comment surligner la ligne active - 18

  • Dans la fenêtre qui s’affiche, choisissez « Cette feuille de calcul », puis sélectionnez la règle et cliquez sur le bouton « Supprimer la règle » :

Excel formation - Comment surligner la ligne active - 19

Excel formation - Comment surligner la ligne active - 20

À présent, nous allons modifier l’événement « Worksheet_SelectionChange » afin de modifier automatiquement la ligne à modifier. Pour en savoir plus sur cette procédure particulière de VBA, je vous invite à retourner dans la première partie de cet article.

Tout d’abord, nous allons vouloir supprimer toute mise-en-forme conditionnelle déjà définie, afin d’éviter que celles-ci ne se rajoutent indéfiniment à chaque fois que nous allons cliquer sur de nouvelles cellules. Pour cela nous allons utiliser l’instruction Delete de FormatConditions :

Excel formation - Comment surligner la ligne active - 21

 

    Cells.FormatConditions.Delete

Comme vous pouvez le voir, nous appliquons cette instruction sur l’ensemble des cellules de la feuille de calcul (« Cells »).

Puis nous allons ajouter une nouvelle mise-en-forme conditionnelle :

Excel formation - Comment surligner la ligne active - 22

Private Sub Worksheet_SelectionChange(ByVal Target As Range
    Cells.FormatConditions.Delete
     With ActiveCell.CurrentRegion.FormatConditions.Add(Type:=xlExpression, Formula1:="=LIGNE(" & ActiveCell.CurrentRegion.Cells(1).Address(False, False) & ")=" & ActiveCell.Row) '1
        .Font.ColorIndex = 2        ' 2
        .Interior.ColorIndex = 32   ' 3
    End With    '4 
End Sub

Ces lignes se décomposent de la manière suivante :

  • 1 : Dans cette première ligne, nous ajoutons une nouvelle mise-en-forme conditionnelle dans la pile des mise-en-formes conditionnelles de la feuille de calcul (qui est vide vu que nous venons juste de supprimer toute mise-en-forme conditionnelle existante).
  • Cette mise-en-forme conditionnelle est à insérer dans le tableau dans lequel se trouve la cellule sélectionnée (ActiveCell.CurrentRegion), ce qui permet de ne sélectionner la ligne qu’à l’intérieur de ce dernier. Nous choisissons d’activer la mise en forme conditionnelle lorsque que la formule suivante renvoie pour valeur « VRAI » : « =LIGNE(" & ActiveCell.CurrentRegion.Cells(1).Address(False, False) & ")=" & ActiveCell.Row ». Il s’agit de la même formule que celle que nous avions saisie dans la première partie de cet article, mais rendue dynamique grâce à l’utilisation de variables : « ActiveCell.CurrentRegion.Cells(1).Address(False, False) » : il s’agit ici de récupérer les coordonnées de la première cellule du tableau sélectionné (« CurrentRegion.Cells(1) »).
  • Attention nous souhaitons que cette mise-en-forme conditionnelle s’applique à l’ensemble des cellules de la région en cours, nous devons donc récupérer les coordonnées relatives de cette cellule, d’où les paramètres « False » appliqués à l’instruction Address.
  • Enfin, nous vérifions si chaque de ces cellule à le même numéro de ligne que la cellule sélectionnée (« =LIGNE(…)=ActiveCell.Row ».
  • Vous noterez au passage que cette ligne commence par une instruction With, ce qui permet de définir directement un ensemble de paramètres à cette mise-en-forme conditionnelle
  • 2 : Nous appliquons la couleur blanche aux textes,
  • 3 : Ainsi qu’un fond de couleur bleu
  • 4 : Enfin nous refermons le With

Et voilà , c’est tout !

Vous pouvez tester, et si vous avez suivi à la lettre le déroulement de cet article, les lignes de chacun de nos tableaux devraient passer en surbrillance lorsqu’une cellule est sélectionnée.

Excel formation - Comment surligner la ligne active - 23

 



Articles qui pourraient vous intéresser

COMMENT CALCULER LE NOMBRE DE JOURS D’UN MOIS SUR EXCEL

COMMENT MODIFIER LE NOMBRE DE FEUILLES INSÉRÉES PAR DÉFAUT DANS UN NOUVEAU CLASSEUR EXCEL

COMMENT EFFACER ET PERSONNALISER LA LISTE DES DOCUMENTS RÉCENTS D’EXCEL (la vraie méthode)

COMMENT CRÉER UNE BARRE DE PROGRESSION EN VBA A RÉUTILISER DANS TOUS VOS CLASSEURS EXCEL !

Commentaires

Tortue33 commented

Bonjour, Très bonne vidéo mais si on souhaite sélectionner toute la ligne du fiche sans s’arrêter à la fin du tableau en VBA? Merci!

Excelformation.fr commented

Bonjour et merci pour votre commentaire. Pour surligner toute la ligne, vous pouvez ajouter « .EntireRow » sur la plage sélectionnée. Ainsi, remplacez la ligne « With ActiveCell.CurrentRegion.FormatConditions.Add(...) » par « With ActiveCell.CurrentRegion.EntireRow.FormatConditions.Add(...) », À bientôt

Poster un commentaire

Pseudo
Commentaire