1ère voyelle d'un mot dans Excel
RésoluDoRoDoR Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je voudrais faire une formule qui extrait la première voyelle en minuscule sans accents, d'une cellule par ex. A1 qui contiendrait un mot (possiblement en minuscule ou en majuscule)
par ex. A1 = "Dominique", A2 contiendrait une fonction qui renvoie "o"
si A1 = "aeiou", A2 renvoie "a"
si A1 = "DMQ", A2 renvoie "N/A"
J'ai regardé la fonction Regex mais cela semble trop compliqué pour moi.
Merci pour votre aide.
si ALinux / Firefox 137.0
4 réponses
Le problème consiste à extraire la première voyelle sans accent et en minuscule d'un mot dans une cellule (par exemple A1), et à renvoyer "N/A" s'il n'y en a aucune.
En LibreOffice, la solution efficace est =REGEX(MINUSCULE(A1); "[aeiouy]"), qui renvoie directement la première voyelle rencontrée.
Sous Excel, pour les versions non 365, on peut utiliser STXT avec AGREGAT et CHERCHE sur les voyelles ("a";"e";"i";"o";"u";"y") pour obtenir la position puis extraire le caractère, avec une variante utilisant SIERREUR pour gérer le cas sans voyelle et en incluant les voyelles accentuées.
Pour Excel 365, la solution simple est =REGEX.EXTRAIRE(A1;"[aeiouyAEIOUY]"), qui renvoie la première voyelle sans accent.
-
Bonjour,
Essaie :
=STXT(A1;MIN(SIERREUR(CHERCHE({"a";"e";"i";"o";"u";"y";"à";"é";"è";"ê";"î";"ô";"û";"ü";"ë";"â"};MINUSCULE(A1));FAUX));1)
Daniel
-
Bonjour,
Sauf si j'ai mal lu, la recherche doit porter sur les voyelles sans accent mais il est dit plus loin possiblement en majuscule.
CHERCHE est indifférent à la casse et retourne a ou A sans quoi il faut utiliser TROUVE et bien sûr spécifier dans la recherche "a";"A";...
Dans le premier cas de figure ne suffit-il pas, testant si on le souhaite l'erreur si la cellule ne contient aucune voyelle:
=CHERCHE({"a";"e";"i";"o";"u;";"y"};A11) -
Bonjour danielc0
J'ai essayé ta formule et sur mon Excel 2013 elle ne fonctionne que si on la valide en matricielle Ctrl+Maj+Enter
Cordialement
-
-
Hello,
A tester avec les Regex (pour Excel 365) :
=REGEX.EXTRAIRE(A1;"[aeiouyAEIOUY]") -
Merci à tous, avec Libre Office la réponse
=STXT(A3,AGREGAT(15,6,CHERCHE({"a";"e";"i";"o";"u";"y"},MINUSCULE(A3)),1),1)
fonctionne bien, merci !
(A3 est la cellule contenant le mot de départ) -