Tri de valeurs avec lettres et chiffres

Bonjour,

Je suis débutant en VBA et j'aurais besoin d'un code pour pouvoir trier la première colonne de mon tableau qui contient d'abords une lettre puis des nombres. Un exemple, actuellement les données sont dans un ordre comme ceci: A13, A23, A103, N1, N40, N57 mais je souhaiterais les mettre dans l'ordre suivant: N1, A13, A23, N40, N57, A103 (c'est à dire dans un ordre numérique croissant indépendant de la lettre au début).

Le VBA me permettrait de l'automatiser sur différents documents où il faut faire un tri similaire.

Je vous mets le document en pièce-jointe.

16demande-vba.zip (21.46 Ko)

Je vous remercie d'avance pour vos recherches.

Bonjour et bienvenue,

En l'absence d'autres propositions, tu n'envisages absolument pas d'isoler la partie numérique de ces données dans une autre colonne, pour pouvoir faire un tri "simple" ?
Power Query permettrait de le faire également, sans que tu sois obligé de t'embarquer dans du code !

Bonjour à tous !

Et....

Après insertion d'un tableau structuré, nomme tSource, pour la plage A12:J280, la formule suivante vous retourne le tableau trié comme attendu :

=LET(
    t; tSource;
    p; PRENDRE(t; ; 1);
    TRIERPAR(t; DROITE(p; NBCAR(p) - 1) * 1; 1)
)

Merci pour la réponse, effectivement séparer les lettres des chiffres est une solution que j'avais vu pour trier facilement mais je n'ai pas trouvé de moyen afin de la mettre en place comme je le souhaitais et c'est pourquoi je suis venu demander de l'aide ici. Le fait de le faire dans mon code me permet d'automatiser la tâche tout en faisant d'autres tâches nécessaire pour mon projet.

Pour JFL, que suis-je censé mettre avant le =LET(...) ? De plus la formulation ne ressemble pas au VBA que je découvre, cela me paraît étrange et me fais plus penser aux formules que l'on rentre dans les cellules des tableaux Excel.

Bonsoir à tous !

Comme indiqué dans mon message, ma proposition est une... formule !

Donc point de VBA.

Elle utilise un tableau structuré (nommé tSource). Vous pouvez placer cette formule où bon vous semble, mais avec un espace disponible suffisant puisqu'elle retourne l'intégralité du tableau trié selon votre souhait.

D'accord effectivement, j'avais mal compris le premier message. Cela fonctionne super bien. Merci pour l'aide

Bonsoir à tous !

Bien....

Je vous remercie de ce retour.

Rechercher des sujets similaires à "tri valeurs lettres chiffres"