Découpe d'une cellule en mots (hors VBA)

marmotte18

XLDnaute Impliqué
Bonjour,

Supposons : A1 = "Je mange tous les jours"

Je souhaiterais trouver des formules de calcul (hors VBA) simples qui me découperaient le contenu de la cellule A1 en mots.

Mes 3 formules fonctionnent si j'ai plus de 3 mots, mais elles sont horriblement complexes. Imaginez la formule qu'il faudrait pour avoir le 20ème mot.

1er mot : (je)
A3=GAUCHE(A1;CHERCHE(" ";A1)-1)

2ème mot : (mange)
B3=STXT(A1;CHERCHE(" ";A1)+1;CHERCHE(" ";A1;CHERCHE(" ";A1)+1)-CHERCHE(" ";A1)-1)

3ème mot : (tous)
C3=STXT(A1;CHERCHE(" ";A1;CHERCHE(" ";A1)+1)+1;CHERCHE(" ";A1;CHERCHE(" ";A1;CHERCHE(" ";A1)+1)+1)-CHERCHE(" ";A1;CHERCHE(" ";A1)+1)-1)
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Re : Découpe d'une cellule en mots (hors VBA)

Bonjour

Pour marmotte18

Tu as la possibilité sur ce forum de joindre des pièces de moins de 50 ko environ. (ton fichier fait 15 ko non compressé)

Alors pourquoi utiliser cjoint ?

petit rappel sur ce site: "Nous hébergerons vos photos, fichiers, url et adresse email durant une période de 21 jours."

Donc dans 3 semaines tes liens seront morts. Mais ce forum n'a pas seulement pour but de répondre à des questions mais d'être une base d'échanges et de connaissances. Ce qui ne sera plus possible quand le sliens seront morts.

Alors merci d'utiliser l'outil interne de XLD pour joindre des fichiers et 50 ko c'est souvent largement suffisant pour expliquer son problème et cela survivra .

Bonne journée
 

marmotte18

XLDnaute Impliqué
Re : Découpe d'une cellule en mots (hors VBA)

Bonjour Monique,

C'est époustouflant ! C'est effectivement la meilleure solution car il n'y a pas de cellules intermédiaires à ouvrir. Un grand MERCI !!!

Un complément d'information s'il te plaît.

Comment fait-on une formule nommée ?
 

marmotte18

XLDnaute Impliqué
Re : Découpe d'une cellule en mots (hors VBA)

Bonjour Pascal76,

J'avoue n'avoir pas été suffisamment curieux pour aller en dessous de la fenêtre "Répondre à la discussion". Je n'ai donc pas vu la fenêtre "Options supplémentaires" avec le bouton "Gérer les pièces jointes".

J'utilise cjoint pour la simple raison que sur d'autres forums informatiques c'est l'une des seules façons de transmettre des fichiers.

Ceci étant dit, j'utiliserai à l'avenir cette fonctionnalité qui m'avait échappée.
 

Monique

Nous a quitté
Repose en paix
Re : Découpe d'une cellule en mots (hors VBA)

Bonjour,

Je n’avais pas vu ce message.
"Un complément d'information s'il te plaît.
Comment fait-on une formule nommée ?"

Pour nommer une formule :
sélectionner la cellule où elle se trouve,
dans la barre de formule, mettre un apostrophe devant le signe "="
la sélectionner dans la barre de formule, sauf l'apostrophe, et copier,
se repositionner sur la même cellule
puis Barre de menu - Insertion - Nom - Définir
En haut, dans la zone "Noms dans le classeur", taper le nom choisi
En bas, dans la zone "Fait référence à", coller
Cliquer sur "Ajouter" puis "OK".

Plus rapide à faire qu’à dire.

Les formules nommées sont à valider de façon "normale", par "Entrée" simplement.
(pas toujours, mais presque)
 

marmotte18

XLDnaute Impliqué
Re : Découpe d'une cellule en mots (hors VBA)

Bonjour Monique,

J'ai suivi scrupuleusement, enfin je crois, tes explications.

A1=2
A2=3
A3=A1+A2

Après les manipulations demandées j'ai bien un nom (Formule01) qui s'est ajouté dans la liste des noms

=> Excel à modifier ma formule pour tenir compte du nom de la feuille

Fait référence à = Feuil2!A1+Feuil2!A2

Le problème est que ma cellule A3 est devenue un cellule texte et qu'elle a perdu son pouvoir de calcul (en effet, tu m'as fait ajouter une apostrophe devant le signe "=").

NB : quand tu as dit :

se repositionner sur la même cellule

J'ai cliqué sur B3, puis sur A3 (cela a eu pour effet de prendre en compte l'apostrophe et donc de transformer le contenu de A3 en texte)

Quelle faute ai-je faite ? Comment utiliser ce nom dans d'autres cellules ?

Cele te gênerait-il de me faire parvenir un petit fichier avec cet exemple ?
 
Dernière édition:

Monique

Nous a quitté
Repose en paix
Re : Découpe d'une cellule en mots (hors VBA)

Re,

Dans la barre de formule, tu copies tout sauf l'apostrophe.
Après, tu colles tout ce que tu as copié dans la zone "Fait référence à".
En A3, tu peux taper =Formule01 et ça fonctionne

Pour t'en servir dans d'autres cellules,
tu nommes la formule en ayant mis ou non les $ à droite ou à gauche.

Sinon, Excel ajoute en effet le nom de la feuille une fois que la formule est nommée.
 

marmotte18

XLDnaute Impliqué
Re : Découpe d'une cellule en mots (hors VBA)

Bonjour Monique,

Tout ce que tu m'as dit, je l'ai fait.

Par contre je n'avais pas réalisé que c'est uniquement dans la cellule A3 que l'on peut mettre Formule01.

En effet, si je mets B3=Formule01, j'obtiens la valeur 0 alors que j'attendais la valeur 3.

Donc au point où j'en suis, j'obtiens les mêmes résultats que ceux annoncés sur la cellule A3 uniquement.

Quel est l'intérêt d'un mécanisme comme celui-ci si on ne peut pas l'utiliser dans d'autres cellules (ex B3=Formule01) ?
 

Monique

Nous a quitté
Repose en paix
Re : Découpe d'une cellule en mots (hors VBA)

Re,

J'ai oublié de te dire un truc :
tu peux la copier-coller !

L'intérêt :
le temps de recalcul est accéléré,
le fichier est plus léger.

L'intérêt, c'est justement quand on a beaucoup de formules, longues et/ou lourdes.

Edit
Tu as oublié de lire un truc :
"Pour t'en servir dans d'autres cellules,
tu nommes la formule en ayant mis ou non les $ à droite ou à gauche. "
 
Dernière édition:

marmotte18

XLDnaute Impliqué
Re : Découpe d'une cellule en mots (hors VBA)

Bonjour Monique,

Pourquoi B3=Formule01 me ramène 0 et non 3 ?

B3=$Formule01, B3=Formule01$ et B3=$Formule01$ m'amènent un refus de calcul de la part d'Excel !

Un petit fichier serait le bienvenu pour comprendre l'utilisation de ce nom avec d'autres cellules
 
Dernière édition:

Monique

Nous a quitté
Repose en paix
Re : Découpe d'une cellule en mots (hors VBA)

Re,

"Pour t'en servir dans d'autres cellules,
tu nommes la formule en ayant mis ou non les $ à droite ou à gauche",
avant de la nommer.
Quand tu la copies, la formule a déjà (ou non) les $
 

marmotte18

XLDnaute Impliqué
Re : Découpe d'une cellule en mots (hors VBA)

Bonjour Monique,

J'ai mis :

référence à = Feuil2!$A$1+Feuil2!$A$2

avant de valider le nom "Formule01"

Maintenant :

A3 = Formule01 ............ m'amène ............. la valeur 3
B3 = Formule01 ............ m'amène ............. la valeur 3

J'ai mis du temps mais j'ai fini par comprendre ! Ce n'est franchement simple et c'est effectivement très différent de nommer un cellule ou une plage de cellules.

Merci pour ta patience et tes explications !

=> Sujet clos
 

Discussions similaires

Statistiques des forums

Discussions
315 095
Messages
2 116 158
Membres
112 673
dernier inscrit
ìntellisoft