Verifier si le classement est correct

Fermé
Olive - 17 févr. 2017 à 14:06
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 18 févr. 2017 à 18:29
Bonjour à tous,

J'ai 2 colonnes AG = place et AH = Perf
Je tri les 2 colonnes par Perf
J'aimerai savoir si les chiffres, dans la colonne place, se suivent. Si ce n'est pas le cas, colorer les cellules qui ne se suivent pas.

J'ai fais la formule, en AI :
=IF(RC[-2]<R[1]C[-2],TRUE,FALSE), qui marche, mais je voudrais automatiser cela, en evitant de tirer la cellule (code vba ?).
Je vous remercie d'avance.
Bonne journée



A voir également:

1 réponse

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
17 févr. 2017 à 22:28
Bonjour,

Tu mets une mise en forme conditionnelle avec ta formule.
0
olive17873 Messages postés 3 Date d'inscription mercredi 31 décembre 2014 Statut Membre Dernière intervention 18 février 2017
18 févr. 2017 à 00:36
Bonjour, Merci pour ta réponse. La formule est pour le moment du depannage. J'aimerai automatiser cela par du vba. D'autre part, la mise en forme conditionnelle ne me servira pas si je passe en vba, non ? ;-)
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
18 févr. 2017 à 08:55
Bonjour,
la mise en forme conditionnelle ne me servira pas si je passe en vba, non ?
C'est une erreur de penser ainsi.
Il faut d'abord utiliser les fonctionnalités d'excel natives qui sont bien plus efficaces et ensuite l'on ne passe à VBA que pour des traitements itératifs non natifs.
0
olive17873 Messages postés 3 Date d'inscription mercredi 31 décembre 2014 Statut Membre Dernière intervention 18 février 2017 > gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020
18 févr. 2017 à 17:15
Bonjour gbinforme,
Finalement, j'ai peux être trouvé la solution. Ce n'est pas terrible, largement ameliorable, mais ca fonctionne :

Sub testClassement()

'tri par perfs
Sheets("test").Select
Range("H7").EntireColumn.SpecialCells(xlCellTypeConstants).Select
Selection.Offset(2, 0).Resize(Selection.Rows.Count - 2).Select
Selection.Resize(Selection.Rows.Count + 0, _
Selection.Columns.Count + 42).Select
Selection.Sort Key1:=Range("AH7"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
'
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'verifie si place 1 est < a place 2...etc...
Range("AG7").EntireColumn.SpecialCells(xlCellTypeConstants).Select
Selection.Offset(2, 0).Resize(Selection.Rows.Count - 2).Select
Set SourceRange = Selection
Set fillRange = Selection.Offset(0, 2)
Range("AI7").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-2]<R[1]C[-2],TRUE,FALSE)"
Selection.AutoFill Destination:=fillRange
'Met en rouge les cellules en "faux"
Dim CurCell As Range
For Each CurCell In fillRange
If CurCell.Value = "Faux" Then CurCell.Interior.ColorIndex = 3
Next


End Sub
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
18 févr. 2017 à 18:29
Bonsoir,
Si tu as trouvé chaussure à ton pied tout va bien.
0