Coloration de lignes

quezaco

XLDnaute Occasionnel
Bonjour à tous, bonjour au forum,
Je reviens vers vous car je souhaiterai colorer des lignes selon leurs données.
Je m'explique:
J'ai un tableau constitué de codes postaux en colonne A, villes en B ..., et je souhaite non pas qu'une ligne sur deux soit colorée mais à chaque changement de codes postaux.
Je vous remercie pour vos suggestions
Le résultat à obtenir est en Feuil2 de l'exemple.
 

Pièces jointes

  • exemple espagne.xlsx
    27.3 KB · Affichages: 117
  • exemple espagne.xlsx
    27.3 KB · Affichages: 120
  • exemple espagne.xlsx
    27.3 KB · Affichages: 115

Fred0o

XLDnaute Barbatruc
Re : Re: Coloration de lignes

Bonjour à tous en ce pluvieux dimanche.

Vous me faites peur avec vos solutions par macro (pourtant j'aime la macro et aussi le maquereau quand il est bien grillé).
J'ai l'impression d'avoir fait un peu simpliste avec ma solution MFC. Mais peut-être est-ce suffisant pour quezaco ?

Nous verrons bien.

A+
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Coloration de lignes

Re,

ton fichier en retour
il suffit de faire un clic-droit dans la cellule A1
voici le code:
Code:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
If Not Intersect(Target, Range("A1")) Is Nothing Then
couleur = 0
For i = 2 To Range("A65535").End(xlUp).Row
If Cells(i, 1).Value = Cells(i + 1, 1).Value Then
Rows(i + 1).Interior.ColorIndex = couleur
Else
couleur = IIf(couleur = 0, 4, 0)
Rows(i + 1).Interior.ColorIndex = couleur
End If
Next i
End If
End Sub
Pour mettre une autre couleur,modifier le 4 de la ligne ci-dessous
couleur = IIf(couleur = 0, 4, 0)

à+
Philippe
 

Pièces jointes

  • 111.zip
    24.5 KB · Affichages: 29
  • 111.zip
    24.5 KB · Affichages: 26
  • 111.zip
    24.5 KB · Affichages: 29

quezaco

XLDnaute Occasionnel
Re : Coloration de lignes

Bonjour a tous,
Merci pour les différentes solutions apportées qui complèteront ma précédente demande. La macro de Gorfael couplée à une MFC feront parfaitement l'affaire.
Si toutefois quelqu'un pouvait adapter la macro de Gorfael à excel 2007, ce serait parfait.

Code :
Sub Macro1()
Dim Cel As Range, Plage As Range, Coul As Long, x
Set Plage = Range([A2], Cells(Cells(Rows.Count, "A").End(xlUp).Row, _
Cells(1, Columns.Count).End(xlToLeft).Column))

Plage.Sort Key1:=Range("A2"), Order1:=xlAscending, Key2:=Range("B2") _
, Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:=False _
, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:= _
xlSortNormal
Plage.Interior.ColorIndex = xlNone
For Each Cel In Plage.Columns(1).Cells
If Cel <> Cel.Offset(-1, 0) Then
If Cel.Offset(-1, 0).Interior.ColorIndex = xlNone Then
Coul = 36
Else
Coul = xlNone
End If
Else
Coul = Cel.Interior.ColorIndex
End If
Range(Cel, Cells(Cel.Row, Plage.Columns.Count)).Interior.ColorIndex = Coul
Next Cel
End Sub



Encore une fois mille merci à tous pour votre aide et pourvu que ça dure...
 

quezaco

XLDnaute Occasionnel
Re : Re: Coloration de lignes

Bonjour Phlaurent55,
Nos messages se sont croisés et je n'avais pas vu votre solution qui fonctionne aussi à merveille.
Encore merci à vous et au temps que vous consacrez à nous trouver des solutions, pourvu que ça dure...
 

quezaco

XLDnaute Occasionnel
Re : Coloration de lignes

Bonjour Fo_rum, bonjour à tous,
Lapienichehautloienichebasounichelhibounihautnibas, mais que fait le furet ???:p
Merci pour votre proposition, mais le résultat parait incomplet...
Encore merci pour vos solutions, pourvu que ça dure...
A bientôt
 

Discussions similaires

Statistiques des forums

Discussions
312 330
Messages
2 087 351
Membres
103 526
dernier inscrit
HEC