A voir également:
- Surligner la 1ere cellule en abscisse et ordo
- Aller à la ligne dans une cellule excel - Guide
- Verrouiller cellule excel - Guide
- Excel colorer une cellule sous condition d'une autre cellule ✓ - Forum Excel
- Le fichier contient le nombre de voyageurs dans 3 gares. dans la cellule b5, saisissez une formule qui calcule le total et se met à jour si on change une valeur du tableau. quel total obtenez-vous ? quelle formule avez-vous saisie ? ✓ - Forum Excel
- Choisir abscisse et ordonnée excel ✓ - Forum Excel
9 réponses
Fxbrg
Messages postés
711
Date d'inscription
samedi 17 mars 2007
Statut
Membre
Dernière intervention
16 novembre 2013
196
9 janv. 2008 à 10:42
9 janv. 2008 à 10:42
Hello!
Avec ton tableau en A1:I13 (colonne A : mois de l'année, ligne 13 : de 2000 à 2007
Dim lig, col As Long
Private Sub Worksheet_SelectionChange(ByVal zz As Range)
lig = ActiveCell.Row
col = ActiveCell.Column
Dim isect
If Selection.Count > 1 Then Exit Sub 'si selectionmultiple
Set isect = Application.Intersect(zz, ActiveSheet.Range("b1:i12"))
If isect Is Nothing Then
ActiveSheet.Range("a1:a12").Interior.Color = 40000
ActiveSheet.Range("b13:i13").Interior.Color = 40000
Else
ActiveSheet.Range("a1:a12").Interior.Color = 40000
ActiveSheet.Range("b13:i13").Interior.Color = 40000
Cells(13, col).Interior.Color = 2000
Cells(lig, 1).Interior.Color = 2000
End If
End Sub
Si tu cliques DANS le tableau, tes abscisses et ordonnées sont colorées, si tu cliques en dehors, tu remtes les abscisses et ordonnées à leur couleur d'origine... Et si tu sélectionnes plusieurs colonnes par erreur dans le tableau, il ne se passe rien...
Dis-moi si ça gaze!! (j'ai XL 2003, mais ça devrait marcher sur tout...
@+,
JF
Avec ton tableau en A1:I13 (colonne A : mois de l'année, ligne 13 : de 2000 à 2007
Dim lig, col As Long
Private Sub Worksheet_SelectionChange(ByVal zz As Range)
lig = ActiveCell.Row
col = ActiveCell.Column
Dim isect
If Selection.Count > 1 Then Exit Sub 'si selectionmultiple
Set isect = Application.Intersect(zz, ActiveSheet.Range("b1:i12"))
If isect Is Nothing Then
ActiveSheet.Range("a1:a12").Interior.Color = 40000
ActiveSheet.Range("b13:i13").Interior.Color = 40000
Else
ActiveSheet.Range("a1:a12").Interior.Color = 40000
ActiveSheet.Range("b13:i13").Interior.Color = 40000
Cells(13, col).Interior.Color = 2000
Cells(lig, 1).Interior.Color = 2000
End If
End Sub
Si tu cliques DANS le tableau, tes abscisses et ordonnées sont colorées, si tu cliques en dehors, tu remtes les abscisses et ordonnées à leur couleur d'origine... Et si tu sélectionnes plusieurs colonnes par erreur dans le tableau, il ne se passe rien...
Dis-moi si ça gaze!! (j'ai XL 2003, mais ça devrait marcher sur tout...
@+,
JF
Fxbrg
Messages postés
711
Date d'inscription
samedi 17 mars 2007
Statut
Membre
Dernière intervention
16 novembre 2013
196
9 janv. 2008 à 10:46
9 janv. 2008 à 10:46
Utilise plutot ça (avec les ColorIndex au lieu de Color...)
Dim lig, col As Long
Private Sub Worksheet_SelectionChange(ByVal zz As Range)
lig = ActiveCell.Row
col = ActiveCell.Column
Dim isect
If Selection.Count > 1 Then Exit Sub 'si selectionmultiple
Set isect = Application.Intersect(zz, ActiveSheet.Range("b1:i12"))
If isect Is Nothing Then
ActiveSheet.Range("a1:a12").Interior.ColorIndex = 2
ActiveSheet.Range("b13:i13").Interior.ColorIndex = 2
Else
ActiveSheet.Range("a1:a12").Interior.ColorIndex = 2
ActiveSheet.Range("b13:i13").Interior.ColorIndex = 2
Cells(13, col).Interior.Color = 2000
Cells(lig, 1).Interior.Color = 2000
End If
End Sub
Dim lig, col As Long
Private Sub Worksheet_SelectionChange(ByVal zz As Range)
lig = ActiveCell.Row
col = ActiveCell.Column
Dim isect
If Selection.Count > 1 Then Exit Sub 'si selectionmultiple
Set isect = Application.Intersect(zz, ActiveSheet.Range("b1:i12"))
If isect Is Nothing Then
ActiveSheet.Range("a1:a12").Interior.ColorIndex = 2
ActiveSheet.Range("b13:i13").Interior.ColorIndex = 2
Else
ActiveSheet.Range("a1:a12").Interior.ColorIndex = 2
ActiveSheet.Range("b13:i13").Interior.ColorIndex = 2
Cells(13, col).Interior.Color = 2000
Cells(lig, 1).Interior.Color = 2000
End If
End Sub
hello
Donc effectivement c'est super lorsque je clique en dehors de la plage, je n'ai plus de couleur... Idem si sélection de plus d'1 cellule ! Impec
par contre si la cellule du début de la ligne (la 1ere en partant de la gauche) est effectivement bien en couleur, pour la colonne c'est la cellule tout en bas mais pas la 1ère en partant du haut
donc si je clique sur la cellule E5, la cellule A5 est en rouge mais ce n'est pas la cellule E1 mais la cellule E13 qui est en rouge
Tu m'as déjà bien mâché le travail, je vais essayer de modifier pour l'adapter
Merci encore
Donc effectivement c'est super lorsque je clique en dehors de la plage, je n'ai plus de couleur... Idem si sélection de plus d'1 cellule ! Impec
par contre si la cellule du début de la ligne (la 1ere en partant de la gauche) est effectivement bien en couleur, pour la colonne c'est la cellule tout en bas mais pas la 1ère en partant du haut
donc si je clique sur la cellule E5, la cellule A5 est en rouge mais ce n'est pas la cellule E1 mais la cellule E13 qui est en rouge
Tu m'as déjà bien mâché le travail, je vais essayer de modifier pour l'adapter
Merci encore
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Fxbrg
Messages postés
711
Date d'inscription
samedi 17 mars 2007
Statut
Membre
Dernière intervention
16 novembre 2013
196
9 janv. 2008 à 11:32
9 janv. 2008 à 11:32
Modifie juste la ligne :
Cells(13, col).Interior.Color = 2000
en mettant 1 à la place de 13...
:-)
Cells(13, col).Interior.Color = 2000
en mettant 1 à la place de 13...
:-)
nickel je venais de m'en apercevoir et je revenais pour en parler... je suis un peu long à la détente
Merci encore
c'est résolu
Merci encore
c'est résolu
ah zut dernier truc, il me laisse sélectionné la première cellule de chaque colonne une fois que je passe à une autre..
Fxbrg
Messages postés
711
Date d'inscription
samedi 17 mars 2007
Statut
Membre
Dernière intervention
16 novembre 2013
196
9 janv. 2008 à 11:50
9 janv. 2008 à 11:50
Il faut aussi que tu modifies les lignes
Activesheet.range("b13:i13") en remplaçant 13 par 1 (attention, 2 lignes à modifier...
Le principe du code est le suivant :
Si tu cliques en dehors (if isect is nothing), alors tu mets ta ligne et ta colonne de titre en blanc... Si tu cliques dedans, tu remets les mêmes lignes et colonnes en blanc, puis tu colories juste les cellules qui vont bien...
Dis-nous si ça marche... :-)
Activesheet.range("b13:i13") en remplaçant 13 par 1 (attention, 2 lignes à modifier...
Le principe du code est le suivant :
Si tu cliques en dehors (if isect is nothing), alors tu mets ta ligne et ta colonne de titre en blanc... Si tu cliques dedans, tu remets les mêmes lignes et colonnes en blanc, puis tu colories juste les cellules qui vont bien...
Dis-nous si ça marche... :-)