Private Sub Cbx_OptTri_Change() 'Trie Colonnes ListView ( Module 1 )
Dim selectedColumn As Integer
Dim i As Long
TextBox1.Value = ""
TextBox2.Value = ""
TextBox3.Value = ""
TextBox4.Value = ""
TextBox10.Value = ""
TextBox11.Value = ""
TextBox13.Value = ""
TextBox14.Value = ""
selectedColumn = val(Cbx_OptTri.ListIndex + 1) 'numéro de la colonne à trier dans la listview
If selectedColumn >= 1 And selectedColumn <= ListView1.ColumnHeaders.Count And ListView1.ListItems.Count > 1 Then
ListView1.Sorted = False
ListView1.SortKey = selectedColumn - 1
If UCase(Me.ListView1.ColumnHeaders(selectedColumn).Text) = "DATES" Then 's'il s'agit de la colonnne Dates, on passe les dates au format décimal pour pouvoir etre trié
For i = 1 To ListView1.ListItems.Count 'Boucle sur toutes les lignes
ListView1.ListItems(i).ListSubItems(selectedColumn - 1).Text = CDec(CDate(ListView1.ListItems(i).ListSubItems(selectedColumn - 1).Text))
Next i
End If
' ------ Application du tri -----------
ListView1.SortOrder = lvwAscending
ListView1.Sorted = True
'--------------------------------------
If UCase(Me.ListView1.ColumnHeaders(selectedColumn).Text) = "DATES" Then 's'il s'agit de la colonnne Dates, on repasse les dates au format date
For i = 1 To ListView1.ListItems.Count 'Boucle sur toutes les lignes
ListView1.ListItems(i).ListSubItems(selectedColumn - 1).Text = Format(CDate(ListView1.ListItems(i).ListSubItems(selectedColumn - 1).Text), "DD/MM/YYYY")
Next i
End If
End If
End Sub