Ordre alphabétique cell avec des chiffres vba
Résolu
mmxa1995
Messages postés
30
Statut
Membre
-
mmxa1995 Messages postés 30 Statut Membre -
mmxa1995 Messages postés 30 Statut Membre -
Bonjour,
Je souhaite classer par ordre alphabétique la colonne A
A
0123 CBD
0123 ABC
0123 CAB
Je souhaite
A
0123 ABC
0123 CAB
0123 CBD
Merci bcp
Je souhaite classer par ordre alphabétique la colonne A
A
0123 CBD
0123 ABC
0123 CAB
Je souhaite
A
0123 ABC
0123 CAB
0123 CBD
Merci bcp
A voir également:
- Ordre alphabétique cell avec des chiffres vba
- Comment trier par ordre alphabétique sur excel - Guide
- Classer les applications par ordre alphabétique iphone - Guide
- Starlink direct to cell prix - Accueil - Opérateurs & Forfaits
- Triez ce tableau par ordre alphabétique des prénoms. ✓ - Forum Excel
- Clavier iphone avec chiffre - Guide
5 réponses
j'utilise la formule =+DROITE(GAUCHE(A101;24);3)
je cherche équivalent en code vba
je cherche équivalent en code vba
https://docs.microsoft.com/fr-fr/previous-versions/visualstudio/visual-studio-2008/dxs6hz0a(v=vs.90)?redirectedfrom=MSDN
Il faut que tu teste la 6e case de ta chaine de caractère. Si il y a égalité alors la 7e puis la 8e.
Comme ce sont des majuscules, tu n'as qu'a tester le code ascii, A<B<C<D etc...
Il faut que tu teste la 6e case de ta chaine de caractère. Si il y a égalité alors la 7e puis la 8e.
Comme ce sont des majuscules, tu n'as qu'a tester le code ascii, A<B<C<D etc...
Bonjour,
pour appliquer une méthode ou une autre:
Combien as tu de lignes dans ton tableau (environ) ?
pour appliquer une méthode ou une autre:
Combien as tu de lignes dans ton tableau (environ) ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
C'est du bricolage mais ça répondra à ta demande à condition que les chiffres soient suivis d'un espace... sinon faudra adapter un minimum la macro suivante :
Option Explicit
Sub ordre_alph()
Dim I As Variant
For I = Range("A1").End(xlDown).Row To Range("A" & Rows.Count).End(xlUp).Row
If Val(Cells(I, 1)) <> 0 Then
Cells(I, 24).NumberFormat = "@"
Cells(I, 24) = Mid(Cells(I, 1), 1, InStr(1, Cells(I, 1), " ") - 1)
Cells(I, 1) = Mid(Cells(I, 1), InStr(1, Cells(I, 1), " ") + 1, Len(Cells(I, 1)))
End If
Next I
Range(Cells(Range("A1").End(xlDown).Row, 1), Cells(Range("A" & Rows.Count).End(xlUp).Row, 1)).Select
ActiveWorkbook.ActiveSheet.Sort.SortFields.Clear
ActiveWorkbook.ActiveSheet.Sort.SortFields.Add Key:=Range(Cells(Range("A1").End(xlDown).Row, 1), Cells(Range("A1").End(xlDown).Row, 1)), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.ActiveSheet.Sort
.SetRange Range(Cells(Range("A1").End(xlDown).Row, 1), Cells(Range("A" & Rows.Count).End(xlUp).Row, 1))
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
For I = Range("A1").End(xlDown).Row To Range("A" & Rows.Count).End(xlUp).Row
Cells(I, 1) = Cells(I, 24).Value & " " & Cells(I, 1).Value
Cells(I, 24).ClearContents
Next I
End Sub
Bonne journée
C'est du bricolage mais ça répondra à ta demande à condition que les chiffres soient suivis d'un espace... sinon faudra adapter un minimum la macro suivante :
Option Explicit
Sub ordre_alph()
Dim I As Variant
For I = Range("A1").End(xlDown).Row To Range("A" & Rows.Count).End(xlUp).Row
If Val(Cells(I, 1)) <> 0 Then
Cells(I, 24).NumberFormat = "@"
Cells(I, 24) = Mid(Cells(I, 1), 1, InStr(1, Cells(I, 1), " ") - 1)
Cells(I, 1) = Mid(Cells(I, 1), InStr(1, Cells(I, 1), " ") + 1, Len(Cells(I, 1)))
End If
Next I
Range(Cells(Range("A1").End(xlDown).Row, 1), Cells(Range("A" & Rows.Count).End(xlUp).Row, 1)).Select
ActiveWorkbook.ActiveSheet.Sort.SortFields.Clear
ActiveWorkbook.ActiveSheet.Sort.SortFields.Add Key:=Range(Cells(Range("A1").End(xlDown).Row, 1), Cells(Range("A1").End(xlDown).Row, 1)), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.ActiveSheet.Sort
.SetRange Range(Cells(Range("A1").End(xlDown).Row, 1), Cells(Range("A" & Rows.Count).End(xlUp).Row, 1))
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
For I = Range("A1").End(xlDown).Row To Range("A" & Rows.Count).End(xlUp).Row
Cells(I, 1) = Cells(I, 24).Value & " " & Cells(I, 1).Value
Cells(I, 24).ClearContents
Next I
End Sub
Bonne journée
par contre mmxa...
Merci et bonne soirée à toi