Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Trier les données par couleur

6 réponses
Avatar
kitlarsen
Bonsoir,

J'ai un tableau excel avec une centaine de lignes
dont les polices sont en bleu, en rouge ou en noir.

Mais voila, y'a t'il un moyen pour que je puisse trier=20
ces lignes de donn=E9es par couleurs ?

Merci =E0 vous

6 réponses

Avatar
Jacquouille
Bonjour
Si tes couleur sont le résultat d'une mise en forme conditionnelle, il n'est
pas impossible de pouvoir trier là-dessus, car, très souvent, on demande si
une cellule est plus grande ou plus petite que x , alors .....donc il
devrait y avoir moyen de trier sur cette colonne.
Bonne chance

--
Jacquouille conseille : http://www.excelabo.net


"kitlarsen" a écrit dans le message
news: 011c01c3aa15$6ec9f430$
Bonsoir,

J'ai un tableau excel avec une centaine de lignes
dont les polices sont en bleu, en rouge ou en noir.

Mais voila, y'a t'il un moyen pour que je puisse trier
ces lignes de données par couleurs ?

Merci à vous
Avatar
Kitlarsen
Non, il n'y a pas de mise en forme conditionnelle, les
couleur sont mises de facon aléatoire (fichier client ou
je met differente couleurs en fonction de l'effectif de
cette société)
Avatar
ru-th
Salut

tu peux toujours rajoutes une colonne =CouleurFontes(A2)

Function CouleurFontes(r As Range)
application.volatile
CouleurFontes = r.Font.ColorIndex
End Function

et fait le tri de dessus mais un changement de couleur ne provoquera pas un
recalcul
alors Gare ! (de l'est)
--
a+
rural thierry
Veaux et Broutards d'Anjou
Wicasa on kin nape yapi inahni yo (à l'essai)

"Kitlarsen" a écrit dans le message de
news: 025c01c3aa25$e2430220$
Non, il n'y a pas de mise en forme conditionnelle, les
couleur sont mises de facon aléatoire (fichier client ou
je met differente couleurs en fonction de l'effectif de
cette société)
Avatar
Starwing
Essaie cette procédure de Frédéric Sigonneau:

Sub TriParCouleurs()
'trie une plage de données soit sur la couleur d'une de
ses cellules
'soit en regroupant ses lignes par couleurs
Dim cell As Range, Col1%, derCol%, Li1&, derLi&, couleur&,
Msg$, choix%
Dim plage As Range

Msg = "Pour trier sur une couleur, cliquez sur ""Oui"""
& vbLf
Msg = Msg & "Pour trier sur toutes les couleurs, cliquez
sur ""Non""" & vbLf
Msg = Msg & "Pour abandonner, cliquez sur ""Annuler"""

choix = MsgBox(Msg, vbYesNoCancel)
Select Case choix
Case 2: Exit Sub
Case 6: GoSub SelectCell: GoSub SelectPlage
Case 7: GoSub SelectPlage
End Select

Li1 = plage.Range("A1").Row
Col1 = plage.Range("A1").Column
derLi = Li1 + plage.Rows.Count - 1
derCol = Col1 + plage.Columns.Count

Application.ScreenUpdating = False
Columns(derCol).Insert Shift:=xlToRight
Select Case choix
Case 6
couleur = cell.Interior.ColorIndex
For i = Li1 To derLi
If Cells(i, Col1).Interior.ColorIndex = couleur
Then
Cells(i, derCol).Value = couleur
If Application.CountA(Cells(i, Col1), Cells(i,
derCol - 1)) = 0 Then
Cells(i, derCol).Value = couleur + 1
End If
End If
Next
Case 7
For i = Li1 To derLi
couleur = Cells(i, Col1).Interior.ColorIndex
If couleur < 0 Then couleur = couleur * -1
Cells(i, derCol).Value = couleur
If Application.CountA(Cells(i, Col1), Cells(i,
derCol - 1)) = 0 Then
Cells(i, derCol).Value = couleur + 1
End If
Next
End Select

Range(Cells(Li1, Col1), Cells(derLi, derCol)).Sort _
Cells(Li1, derCol), xlAscending
Columns(derCol).Delete Shift:=xlToLeft
Exit Sub

SelectCell:

Msg = vbLf & "Sélectionner une cellule de la couleur à
trier :"
On Error Resume Next
Application.DisplayAlerts = False
Set cell = Application.InputBox(Msg, , , , , , , 8)
Application.DisplayAlerts = True
If Err <> 0 Then
Err.Clear: Exit Sub
End If

If cell.Count > 1 Then
MsgBox "Sélectionnez une seule cellule, SVP"
TriParCouleurs
End If
Return

SelectPlage:

Msg = "Sélectionnez la plage des données à trier"
On Error Resume Next
Application.DisplayAlerts = False
Set plage = Application.InputBox(Msg, , , , , , , 8)
Application.DisplayAlerts = True
If Err <> 0 Then
Err.Clear: Exit Sub
End If

If plage.Rows.Count = 1 Then
MsgBox "La plage à trier doit comporter au moins 2
lignes..."
TriParCouleurs
End If
Return

End Sub


Starwing
-----Message d'origine-----
Bonsoir,

J'ai un tableau excel avec une centaine de lignes
dont les polices sont en bleu, en rouge ou en noir.

Mais voila, y'a t'il un moyen pour que je puisse trier
ces lignes de données par couleurs ?

Merci à vous
.



Avatar
AV
Non, il n'y a pas de mise en forme conditionnelle, les
couleur sont mises de facon aléatoire (fichier client


....je met differente couleurs en fonction de l'effectif de
cette société)

Ben voilà qui pourrait faire l'objet d'une MFC !
Et si les couleurs sont mises en fonction de l'effectif, pourquoi ne pas trier
croissant/décroissant sur l'effectif ?
Ca respecterait "ta logique" car, le tri sur les codes couleurs, ne te donnera
pas forcément un résultat "parlant" !

AV

Avatar
kitlarsen
Oui mais c'est plus compliquer que ca, tu pense bien que
si je pouvais faire un tri sur les chiffres je ne vous
aurez pas embeté, le probléme c'es que je change les
couleur souvent, en fonction d'un effectifs qui peut
varier 4 fois par jour !

Je vais donc ajouter un colonnes avec chiffres (1,2,3) ce
sera moins compliqué.

Merci à vous,




effectif, pourquoi ne pas trier
croissant/décroissant sur l'effectif ?
Ca respecterait "ta logique" car, le tri sur les codes
couleurs, ne te donnera

pas forcément un résultat "parlant" !