Bonjour,
J'ai un soucis au niveau du tri dans mon programme, le tout compile mais ca ne tri pas. Je veux trier dans un premier les noms par ordre alphabétique se suivant de B3 à BX (X variable) puis si les noms sont les memes regarder les prenoms allant de C3 à CX. Le tout en déplaçant d'autres informations par chaque personne se trouvant dans les différentes colonnes.
Par exemple : Dans B3 j'aurai Durand ; dans D3 Jean ; dans A3 son numero de carte dans E3 jusqu'à DN3 d'autres info le concernant.
Merci de me répondre
Code:Sub Macro3() Dim i As Long, DerLigne As Long Dim date1 As Date, date2 As Date ' On vide la liste UserForm1.ListBox1.Clear 'On trouve la ligne à partir de laquelle il n y a plus d'informations Dernligne = Sheets("Liste des usagers").Range("B" & Rows.Count).End(xlUp).Row Sheets("Liste des usagers").Rows("3:100").Select Selection.Sort Key1:=Range("B3"), Order1:=xlAscending, Key2:=Range("C3") _ , Order2:=xlAscending, Header:=xlYes, OrderCustom:=1, MatchCase:=False _ , Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:= _ xlSortNormal For i = 3 To Dernligne date1 = DateSerial(Year(Now), Month(Now), Day(Now)) 'On stocke l année, le mois, et le jour dans cette variable date2 = Sheets("Liste des usagers").Cells(i, 4).Value 'On stocke la date d expiration If date2 - date1 < 30 Then UserForm1.ListBox1.AddItem (Cells(i, 2) & " " & Cells(i, 3) & " Carte n° " & Cells(i, 1) & " ---> " & date2 - date1 & " " & "jour(s)") Rows(i & ":" & i).Select Selection.Font.ColorIndex = 3 Else Rows(i & ":" & i).Select Selection.Font.ColorIndex = 1 End If Next i UserForm1.Show 'On affiche le UserForm1 End Sub
-----