Donner un classement par ordre alphabétique

Bonjour à tous,

Je viens d'arriver sur ce forum et si ma question a déjà été traitée veuillez m'en excuser.

Voilà.

Je connais la fonction RANG permettant de donner un classement en fonction de la valeur numérique des cellules à traiter. Existe t'il une fonction permettant de faire la même chose mais avec des valeurs alphabétiques ?

Je vous remercie par avance de vos réponses.

Bonjour,

A essayer :

En utilisant la fonction CODE, vous pouvez changer une lettre en nombre et ensuite appliquer sur le nombre la fonction RANG

@+

it

Merci TOUBOUL d'avoir répondu aussi vite.

Malheureusement ta solution ne suffit pas puisque CODE ne prend en compte que la première lettre du texte (CODE(a)=CODE(avec) et moi je voudrai avoir un classement de l'ensemble NOM Prénom de la liste.

Alors je suis toujours preneur d'autres idées.

Toujours pas de solution ??!! Est ce parceque le sujet n'interesse personne ou bien parcequ'il n'y a aucune solution ??

Bonjour Roger61

Je voie ton impatience.

A ma modeste connaissance, je ne connais pas de fonction directe équivalente à RANG ou GRANDE.VALEUR agissant sur du Texte.

Pour moi, il faut passer par une macro.

Cordialement

Amadéus

Merci pour ton message Amadéus.

Je ne me suis pas encore lancé dans la rédaction de macros.

Peux tu m'indiquer soit un site où je peux apprendre ou trouver mon bonheur ou bien un ouvrage qui me permettrait de m'initier.

Merci encore.

bonjour

Voici une ébauche de ce que vous chercher (enfin je crois)

bon courage

https://www.excel-pratique.com/~files/doc/position_alpha.xls

cordialement

petidani

Bonjour Roger61 et petidani

Y a pas..! Une fois de plus, c'est nickel.

Franck, j'attendais un commentaire de ta part sur ma derniére réponse à ANDRELOUIS62.

Cordialement,

Amadéus

Bonjour petidani

Merci pour ton aide mais ce dont j'ai besoin ce n'est pas la position d'un mot dans une liste mais son rang alphabétique.

Exemple :

Liste de mots -- Rang

Jardin --------------- 6

Biscotte ------------- 4

amis ---------------- 3

Plume --------------- 7

ami ------------------ 1

frère ----------------- 5

amie ----------------- 2

Voilà, j'espère que je me suis mieux expliqué et que c'est plus claire.

Cordialement

Bonsoir Roger61

Petidani te fera ça en VBA. En attendant, avec les touches de raccourci Ctrl+s, tu peux voir un résultat correspondant à ta recherche.

La macro XL4 insére une colonne avant la colonne B pour y placer le rang alpha.

Cordialement

Amadéus

https://www.excel-pratique.com/~files/doc/EyvUPposition_alpha.xls

Bonjour Amadeus, Bonjour Roger6.

OK, j'étais pas sur la même longueur d'ondes.

Je regarderai ça ce midi si une fonction est possible, sinon la marco d'AMADEUS suffit

Amadeus si tu veux essayer par toi même il suffit de coller ta macro dans la la feuille correspondante dans le vba et utiliser

private sub worksheet_calculate (byval target as range)

"ta macro"

sub

"ou worksheet_change"

de plus dans ta macro XL4 (ne peux tu pas faire un "SUPPRIMER" de la colonne par la suite et bloquer l'écran pour ne pas voir les mouvements de la macro.

Je me souviens que je faisais ça sous LOTUS.

cordialement

petidani

Bonjour petidani

Même ça, je ne sais pas faire.

Tu me rendrai peut être moins idiot si tu le faisais pour moi et que tu me renvoie le fichier pour que je fasse mon éducation.

Pour ce qui est du blocage d'écran pendant l'exécution de la macro XL4, il y est bien avec la premiére ligne de commande =ECRAN(FAUX) mais, lors de l'exécution, l'écran bouge puisque une colonne supplémentaire est insérée avant les données au cas ou la premiére colonne contiendrait elle aussi des données.

Cordialement

Amadéus

Bonjour Roger61, bonjour amadeus

J'ai réussi à faire une fonction équivalant à RANG ce midi que je viens de complèter. Elle ne comporte qu'une anomalie (cf fichier), qui peut être corrigée mais qui prendra un peu plus de temps. (donc je ne peux pas tout de suite)

PS: amadeus je ne vois pas ta macro XL4, je voudrais te la mettre en vba pour que tu puisses comparer (juste pour te faire voir le langage)

https://www.excel-pratique.com/~files/doc/trialpha.xls

cordialement

petidani

Bonjour à tous

Petidani, la Macro est dans le fichier mais la Feuille est masquée. Pour la voir, il faut passer par le menu "Format" "Feuille" "Afficher" et sélectionner la feuille.

Amadéus

Bonjour petidani

Tout d'abord un grand merci pour ton travail.

* Pour le pb de reconnaissance des caractères accentués, ce n'est pas pour moi majeur.

* Quand la cellule est vide, le rang renvoyé est 1. Je pense qu'en utilisant une fonction SI je peux résoudre ce pb.

* Est ce qu'il est possible de provoquer le "recalcul" dès que quelque chose change dans le fichier (par exemple ajouter un mot dans la liste)?

* Peux tu aussi m'indiquer comment je peux récupérer ton travail pour le mettre dans mon fichier et aussi le ranger dans les outils d'EXCEL pour pouvoir le réutiliser dès que l'occasion se présentera ?

Voilà mes commentaires et je te remercie encore de bien vouloir mettre tes compétences au service des autres. BRAVO.

bonjour roger61,

j'ai modifié le problème de condition lorsque la cellule est vide (effectivement j'avais pas testé ça)

https://www.excel-pratique.com/~files/doc/7QPx3trialpha.xls

'----------------------------------------------------------------------------

pour le recalcul c'est un problème il faut soit que "a" soit changé, soit revalider la formule.

La solution est d'utiliser le vba

"private sub worksheet_calculate (byval target as range)"

ou "private sub worksheet_change (byval target as range)"

et de mettre à l'intérieur une revalidation des formules.

'-----------------------------------------------------------------------------

Pour utiliser le fichier soit tu fais un copier-coller du module où se trouve la formule

outils -> macro -> visual basic editor.

vers un module de ton fichier.

Soit tu exportes le module et tu le sauvegarde quelque part (clic droit : exporter)

et tu le réinportes dans le vba de ton fichier et lorsque tu as besoin.

Pour l'instant je ne sais pas importer définitivement dans excel mes fonctions.

Je les rajoute quand j'en ai besoin.

Voilà

cordialement

petidani

(re)bonjour petidani

Je vois que tu ne perds pas de temps pour répondre aux interrogations posées.

Avec tes explications j'ai pu intégrer le résultat de ton travail à mon fichier et aussi le sauvegarder afin de l'utiliser comme bon me semble.

Je n'avais pas précisé que le texte à analyser était des "NOM Prénom".

Dans le fichier joint, tu trouvera en colonne K une liste de personnes et en colonne L son rang. 2 personnes ont le même numéro (13) sans doute du fait qu'elles sont homonymes (sauf les prénoms). Est il possible d'y remédier ?

Pour ce qui est du recalcul, c'est du chinois pour moi !!!!

Très cordialement.

https://www.excel-pratique.com/~files/doc/xogAutrialpha.xls

Oui , c'est corrigé cependant maintenant je ne pourrais rien faire si le nom et le prénom sont identique.

(le tri_alpha s'étandait jusqu'au Nom seulement, maintenant il va jusqu'au bout du prénom)

https://www.excel-pratique.com/~files/doc/LfTqEtrialpha.xls

cordialement

petidani

Bravo petidani et grand merci pour ton travail et ta patience.

Je pense que je peux marquer ce sujet comme étant solutionné.

Bonne continuation.

Cordialement

Rechercher des sujets similaires à "donner classement ordre alphabetique"