surlignage selon selection

ccdouble6

XLDnaute Occasionnel
Bonjour tout le monde !!

Utilisateur d'Excel 2003, je souhaite savoir comment demander à ma macro de surligner d'une couleur donnée LA cellule de la ligne x lorsque je clique sur une cellule de SA colonne, quelle que soit la ligne où j'ai sélectionné la cellule.
J'ai récupéré une macro et je pense qu'il doit être possible de l'adapter mais je vois pas comment.. :confused:
Merci d'avance pour vos lumières !! :)

voici la macro :
(le principe)
Si cellule selectionnée sur ligne
Alors toute la ligne est colorée.

"
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Cells.Interior.ColorIndex = xlNone
Target.EntireRow.Interior.ColorIndex = 8
End Sub

"

ccdouble6.
 

ccdouble6

XLDnaute Occasionnel
Re : surlignage selon selection

Merci jmps :)

Oui en fait c'est dans l'esprit de ce que je cherche, mais est-il possible que la cellule qui s'active soit :
- sur la ligne 3,
- de la colonne précise où j'ai sélectionné n'importe quelle cellule?
c'est pas facile à expliquer ;) enfin voici un exemple :

Je suis sur la cellule B6 la cellule B3 se colore,
sur G5 c'est la cellule G3,
sur L52 c'est la cellule L3...
En fait je doit pouvoir choisir n'importe quelle cellule dans une colonne, celle dans la même colonne et sur la ligne 3 doit se colorer.

J'ai fait quelques essais en partant de ta macro mais je dois me planter qqpart le débogueur s'active à chaque fois :(
Merci et bonne soirée !!

ccdouble6.
 

ccdouble6

XLDnaute Occasionnel
Re : surlignage selon selection

Salut Jmps,

Ah oui pour sur elle est belle !! :cool:
ça marche impeccable c'est géant !!
par contre c'est normal qu'il me vire toutes les couleurs de fond de cellule partout??? c'est bizarre.. on peut pas lui demander de les conserver?? c'est qu'elles sont utiles car le tableau est vraiment grand...

Enfin en tout cas merci beaucoup !!! :) :) :)
A+!!

ccdouble6.
 

ccdouble6

XLDnaute Occasionnel
Re : surlignage selon selection

Je suis en train de tester un équivalent fait maison pour les lignes, mais rien ne se passe et je vois pas d'où vient le probleme, si tu as deux minutes tu veux bien jeter un oeil, merci !!!

"
Private Sub Worksheet_SelectionChange2(ByVal Target As Range)
Columns(21).Interior.ColorIndex = xlNone
Cells(Target.Row, 21).Interior.ColorIndex = 7
End Sub
"
 

ccdouble6

XLDnaute Occasionnel
Re : surlignage selon selection

:eek: Ah?
Sorry.. euh je veux dire.. je le referai plus..

Ben c'est que le compileur m'a dit que les deux noms étaient pareils.. alors j'ai changé le nom ;) bon un peu radical d'accord comme procédé..

Alors c'était juste ce 2 :eek: le reste va bien donc? mais quel nom il faut changer alors? Ou bien c'est parce que les deux macros sont à la suite? mais ya une ligne qui s'est tracée je croyais que c'était pour bien séparer...

Enfin merci en tout cas :)
Bonne soirée!!!
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Re : surlignage selon selection

Bonjour CcDouble6, Amigo José, le Forum

Vu que José faire la "grasse à la fraiche" ! lol

Tu peux simplement combiner tes deux codes :

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Rows(3).Interior.ColorIndex = xlNone
Columns(21).Interior.ColorIndex = xlNone
Cells(3, Target.Column).Interior.ColorIndex = 8
Cells(Target.Row, 21).Interior.ColorIndex = 7
End Sub

Bonne Journée
@+Thierry
 

fredh

XLDnaute Occasionnel
Re : surlignage selon selection

Salut a tous

J'avais deja poster un fil du meme acabit.
Pour ameliorer mon fichiers j'ai jeter un oeil sur vos realisations.
Quelque questions toutefois :
Les couleur des celulles sont tout de memes effacer est ce normal ?
Peut on etendre le surlignage jusqu'a la celulle active ( pour les lignes et les colonnes)?

Chez moi j'avais activer la fonction par double clique et desactiver aussi par double clique mais j'aimerai associer cette "evenement" a un bouton dans la barre d'outil (peut etre meme avec une barre associer au fichier).
Un forumeur ma proposer cette astuce pour palier le probleme de copier coller qui ne marche pas
 

max_31

XLDnaute Junior
Re : surlignage selon selection

Bonjour,

Je trouve ca intéressant, mais je souhaiterais savoir s'il est possible de surligner la ligne complète de là où se trouve le curseur :
ex : si le curseur se trouve sur la ligne 5, alors on surligne toute la ligne 5.
Quel serait le code à appliquer ?

Merci d'avance.
 

max_31

XLDnaute Junior
Re : surlignage selon selection

Je viens de trouver la réponse sur le forum.

Voici le code si quelqu'un est intéressé. Cela colore les 200 premières colonnes.

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)

If Target.Row > 5 Then
Range(Cells(6, 1), Cells(5000, 200)).Interior.ColorIndex = xlNone
Range(Cells(Target.Row, 1), Cells(Target.Row, 200)).Interior.ColorIndex = 40
End If

End Sub

Merci pour ce forum.
 

ccdouble6

XLDnaute Occasionnel
Re : surlignage selon selection

:) Bonjour tout le monde!!

Enfin pu me connecter, yeah cool tout ça!!
Déjà merci Thierry pour cette astuce ça marche du tonnerre :cool:
merci max_31 ça aussi ça va bien me servir..

Et merci Jmps pour la patience dont tu as fait preuve, je reconnais que je suis bien généreux en questions :D

...Enfin j'espère qu'un jour je pourrai à mon tour répondre aux questions, pour ça faut que je m'exerce !!
A bientôt !!

ccdouble6.
 

fredh

XLDnaute Occasionnel
Re : surlignage selon selection

Salut a tous

Avec vos macros ca tourne biens sauf si la feuille est proteger....

Existe il un moyens de pouvoir travailler avec vos macros sur un tableau avec une zone qui contient des celulles proteger (consultations) et une autre zone avec des celulles non proteger(saisi)


Merci
 
X

xavB

Guest
Re : surlignage selon selection

Bonjour,

Ces macros sont très intéressantes mais le problème est que soit :
- elles décolorent toute la feuille
- soit elles ne décolorent pas la précédente ligne

Est il possible d'avoir une macro qui :
- ne touche pas au reste de la feuille
- colore la ligne correspondant à la cellule sélectionnée
- decolore juste la precedente ligne

Merci !
 

ccdouble6

XLDnaute Occasionnel
Re : surlignage selon selection

Salut xavB !!

Et oui dslé évidemment les perfectionnements apportés à la macro sont postérieurs à la date de récup du forum et ont donc été effacés :(
Je vais jeter un coup d'oeil dans mes archives, on avait trouvé une solution pour ne colorer que ce que l'on veut : 1 ligne ou 1 colonne précise en fonction de la position de la selection...
par contre ça prendra un peu de temps (re-dslé) sauf si j'arrive à me reconnecter ici (cybercafé) demain...

De mémoire je crois que si tu souhaites colorer une ligne entière, et que cette ligne est susceptible de changer (donc c'est prévu dans la macro), alors c'est toute la surface de ton tableau qui sera concernée : je ne pense pas que les formats de cellules (couleur de fond par exemple) subsisteront car elles seront susceptibles d'être colorées.
bonne soirée !!!
 

ccdouble6

XLDnaute Occasionnel
Re : surlignage selon selection

Bonjour xavB,

voici ce que j'ai récupéré de l'autre fois :


***************************************************

ETAPE 1
-------
Si cellule selectionnée sur ligne
Alors toute la ligne est colorée.

"
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Cells.Interior.ColorIndex = xlNone
Target.EntireRow.Interior.ColorIndex = 8
End Sub
"

*****************************************************

ETAPE 2
-------

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Cells.Interior.ColorIndex = xlNone
If Target.Column = 4 Then
Range("D2").Interior.ColorIndex = 8
End If
End Sub

Ici on colore la cellule D2 en bleu si on est dans la colonne D (colonne 4).
Ne marche QUE pour la colonne D.


******************************************************

ETAPE 3
-------

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Cells.Interior.ColorIndex = xlNone
Cells(3, Target.Column).Interior.ColorIndex = 8
End Sub

Même principe mais quelle que soit la colonne.
Par contre TOUTES les couleurs de fond de cellule sont désactivées (cause ligne2: 'Cells').


********************************************************

ETAPE 4
-------

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Rows(3).Interior.ColorIndex = xlNone
Cells(3, Target.Column).Interior.ColorIndex = 8
End Sub

Seules les couleurs de la ligne 3 sont désactivées (ligne2: "Rows(3)" )

****************************************************
*****************************************************


tu peux améliorer au besoin, tester et me dire si ça marche ??
Bonne fin d'aprem !!!
 

Discussions similaires