Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/10/2011, 08h52   #1
Membre expérimenté
 
Homme René LE CORNEC
Assistant aux utilisateurs
Inscription : septembre 2007
Messages : 1 114
Détails du profil
Informations personnelles :
Nom : Homme René LE CORNEC
Âge : 51
Localisation : France

Informations professionnelles :
Activité : Assistant aux utilisateurs
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : septembre 2007
Messages : 1 114
Points : 513
Points : 513
Par défaut ligne grisée lorsqu'une cellule est sélectionnée

Bonjour à tous,

Je cherche un moyen de griser automatiquement une ligne dans un tableau lorsqu'une cellule de cette ligne est sélectionnée dans la colonne "X". Par contre, lorsque je change de ligne, le grisé doit changer de ligne également.

Pouvez-vous m'apporter votre aide s'il vous plait ?

Je vous en remercie par avance

René
__________________
"Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
NEC14 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/10/2011, 10h08   #2
Expert Confirmé Sénior
 
Homme Daniel
aucune
Inscription : septembre 2011
Messages : 2 004
Détails du profil
Informations personnelles :
Nom : Homme Daniel
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : aucune

Informations forums :
Inscription : septembre 2011
Messages : 2 004
Points : 4 037
Points : 4 037
Bonjour,
Dans un module standard, mets :

Code :
Public ResLigne  As Integer
Dans le module ThisWorkbook, mets :

Code :
1
2
3
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Rows(ResLigne).Interior.ColorIndex = 0
End Sub
Dans le module de la feuille, mets :

Code :
1
2
3
4
5
6
7
8
9
10
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column = 24 Then
        If ResLigne <> 0 Then
            Rows(ResLigne).Interior.Color = 16777215
            Rows(ResLigne).Interior.ColorIndex = 0
        End If
        Target.EntireRow.Interior.Color = RGB(192, 192, 192)
        ResLigne = Target.Row
    End If
End Sub
Note que toute couleur préexistante sera effacée.
__________________
Cordialement.

Daniel

Citation:
La plus perdue de toutes les journées est celle où l'on n'a pas ri.
Chamfort
Daniel.C est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 28/10/2011, 10h40   #3
Membre expérimenté
 
Homme René LE CORNEC
Assistant aux utilisateurs
Inscription : septembre 2007
Messages : 1 114
Détails du profil
Informations personnelles :
Nom : Homme René LE CORNEC
Âge : 51
Localisation : France

Informations professionnelles :
Activité : Assistant aux utilisateurs
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : septembre 2007
Messages : 1 114
Points : 513
Points : 513
Bonjour Daniel,

Merci beaucoup pour ton aide, c'est exactement ce que j'attendais.
Bon week-end et encore merci

René
__________________
"Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
NEC14 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h55.


 
 
 
 
Partenaires

Hébergement Web