1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| 'fonction pour trier par ordre alphabétique le répertoire clients
Dim objFSO, objTextFile
Dim arrLines
Dim bpermute, cprovisoire, i, j
Dim Myfile As String
Myfile = App.Path & "\" & "Répertoire.rpc"
Dim MySortedFile As String
MySortedFile = App.Path & "\" & "Répertoire_trié.rpc"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile(Myfile, 1)
'arrLines = Split(objTextFile.ReadAll, vbCrLf)
'objTextFile = Replace(objTextFile.ReadAll, "é", "é")
arrLines = Split(Replace(objTextFile.ReadAll, "é", "é"), vbCrLf)
Set objTextFile = Nothing
Set objTextFile = objFSO.OpenTextFile(Myfile, 1)
arrLines = Split(Replace(objTextFile.ReadAll, "°", "°"), vbCrLf)
Set objTextFile = Nothing
Set objTextFile = objFSO.OpenTextFile(Myfile, 1)
arrLines = Split(Replace(objTextFile.ReadAll, "ç", "ç"), vbCrLf)
Set objTextFile = Nothing
Set objTextFile = objFSO.OpenTextFile(Myfile, 1)
arrLines = Split(Replace(objTextFile.ReadAll, "è", "è"), vbCrLf)
objTextFile.Close
bpermute = True
Do While bpermute = True
bpermute = False
For i = UBound(arrLines) To 1 Step -1
If Len(arrLines(i)) > 1 Then
For j = 0 To i - 1
If Len(arrLines(j)) > 1 Then
If Split(arrLines(j), Chr(44))(0) > _
Split(arrLines(j + 1), Chr(44))(0) Then
cprovisoire = arrLines(j)
arrLines(j) = arrLines(j + 1)
arrLines(j + 1) = cprovisoire
bpermute = True
End If
End If
Next
End If
Next
Loop
'Write File
Set objTextFile = objFSO.CreateTextFile(MySortedFile, 2)
For i = 0 To UBound(arrLines)
objTextFile.WriteLine arrLines(i)
Next
objTextFile.Close
Set objTextFile = Nothing
Set objFSO = Nothing |
Partager