Sélectionner une plage en fonction de la valeur d'une cellule

Résolu/Fermé
Cottages Messages postés 8 Date d'inscription dimanche 10 novembre 2013 Statut Membre Dernière intervention 15 juin 2017 - 19 mai 2017 à 16:12
Cottages Messages postés 8 Date d'inscription dimanche 10 novembre 2013 Statut Membre Dernière intervention 15 juin 2017 - 19 mai 2017 à 21:43
Bonjour,

Quel travail ,vous faites!! bravo!

Mon cas est le suivant: à partir de la valeur dans une cellule active (cliquée dans une plage), je voudrais colorer les cellules d'une plage de cellules (à valeurs croissantes) jusqu'à cette valeur.
Ou plus simplement expliqué:

Je clique sur A2, plage A1 A20, valeur 250.
Toutes les cellules de la plage C1 C10, seront colorées jusqu'à la cellule C5 qui a la valeur 223 et pas plus loin puisque C6=270.

Merci beaucoup.

6 réponses

Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
Modifié le 19 mai 2017 à 16:51
Bonjour,

cela n'est pas très compliqué, mais avec le VBA il faut être précis et comprendre ta demande

si je comprends bien en colonne A tu as une série de valeurs et lorsque tu clic sur une valeur de ta plage A tu veux coloriser les valeurs inférieures à cette valeur colonne C

Mais s'agit il toujours de la plage colonne C ou as tu d'autres plages à coloriser !

A+
Mike-31

Je suis responsable de ce que je dis, pas de ce que tu comprends...
0
Cottages Messages postés 8 Date d'inscription dimanche 10 novembre 2013 Statut Membre Dernière intervention 15 juin 2017
19 mai 2017 à 17:00
Merci pour cette réponse rapide!

C'est exactement ça.
Il n'y a qu'une plage à colorer, dans l'exemple c'est la plage C1 C10 (enfin jusqu'à C5 seulement).
Merci
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
19 mai 2017 à 17:16
Re,

voilà un code dans ce genre
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Range("C1:C10").Interior.ColorIndex = 6
For Each i In Range("C1:C10")
If i < Target Then i.Interior.ColorIndex = 3
Next i
End Sub

certainement à compléter
0
Cottages Messages postés 8 Date d'inscription dimanche 10 novembre 2013 Statut Membre Dernière intervention 15 juin 2017
19 mai 2017 à 20:32
Ca marche impeccable!
Comment sélectionner maintenant les cellules actives uniquement dans la plage A1 A10?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
Modifié le 19 mai 2017 à 21:04
Re,

voila le code a coller dans les propriétés de ta feuille (clic droit sur l'onglet de ta feuille/Visualiser le code)

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Selection, Range("A1:A20")) Is Nothing Then
Range("C1:C10").Interior.ColorIndex = xlNone
For Each i In Range("C1:C10")
If i < Target Then i.Interior.ColorIndex = 3
Next i
End If
End Sub

A+
Mike-31

Je suis responsable de ce que je dis, pas de ce que tu comprends...
0
Cottages Messages postés 8 Date d'inscription dimanche 10 novembre 2013 Statut Membre Dernière intervention 15 juin 2017
19 mai 2017 à 21:43
Merci beaucoup, Mike!
0