Comment trouver le maximum dans une liste alphanumérique

Je cherche à extraire la valeur maximale de « y » dans une série de valeurs de type « x-y ».

En termes plus concrets : dans une série de valeurs de type : 01-01, 01-02, 01-03, 01-04, etc…, je voudrais récupérer la valeur maximale du 2ème nombre (dans mon exemple, ce serait 4) en une seule opération. Je sais le faire mais seulement en créant, pour chaque valeur, une cellule où j’extrais le nombre correspondant, puis une dernière cellule où je cherche la valeur maximale.

Ça doit se faire en VBA, mais je ne sais que bidouiller.

Quelqu’un pourrait-il m’aider ?!

Merci !

Bonjour

=MAX(DROITE(A1:A10;2)*1)

Formule matricielle : à valider avec CTRL+MAJ+ENTREE

Amicalement

Nad

Edit : Oups! Je vois que tu voulais du VBA - Désolée, je ne sais pas le traduire

Edit 2 : Merci de modifier ta version excel dans ton profil : la version "me cultiver" est inconnue ...

Bonjour, salut Nad

Ou , si tu dépasses les 2 caractères pour aller jusqu'à 3 dans tes nombres de fin 01-112 par exemple

=MAX(SUBSTITUE(A1:A10;STXT(A1:A10;1;3);"")*1)

ou si tu ne connais pas le nombre de caractères pour ton nombre de fin

=MAX(STXT(A1:A10;CHERCHE(CAR(45);A1:A10;1)+1;NBCAR(A1:A10))*1)

qui marche quel que soit ce nombre de caractères jusqu'à 15 chiffres.

Ces 2 formules en matricielles également

Cordialement

Merci beaucoup pour ta réponse.

Ça marche...presque !!! Il me reste un problème (j'aurais dû être plus précis dans ma question) : dans ma liste, certaines données ne sont pas du tout du type "XX-YY", mais un petit texte, du genre NC (non conforme), etc...

Du coup, la présence de texte (une d'une cellule vide) dans la liste renvoit un message d'erreur...

Le fait que ça ne soit pas du VBA me va très bien !

J'ai modifié mon profil (je ne sais pas d'où sortait cette mention bizarre).

Merci pour cette réponse hyper-pointue.

J'ai le même souci qu'avec la réponse de Nad-Dan : les valeurs de type texte ou les cellules vides font planter...

Re

Les 3 formules précédentes modifiées

=MAX(SI(ESTNUM(DROITE(A1:A10;2)*1);DROITE(A1:A10;2)*1))
=MAX(SI(ESTNUM(SUBSTITUE(A1:A10;STXT(A1:A10;1;3);"")*1);SUBSTITUE(A1:A10;STXT(A1:A10;1;3);"")*1))
=MAX(SI(ESTNUM(STXT(A1:A10;CHERCHE(CAR(45);A1:A10;1)+1;NBCAR(A1:A10))*1);STXT(A1:A10;CHERCHE(CAR(45);A1:A10;1)+1;NBCAR(A1:A10))*1))

Toujours matricielles

Cordialement

Impressionnant ! Ça marche !!!

Merci beaucoup !

Ça donne envie d'en apprendre davantage sur Excel...

Rechercher des sujets similaires à "comment trouver maximum liste alphanumerique"