Excel -fréquence de plusieurs expressions dans une seule cellule

Marie_88 Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   -  
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai créé un fichier Excel où il y a une liste de mots clés, ainsi que plusieurs autres cellules.
Pour chacune de ces cellules (par exemple Titre ou Meta Description), je veux connaître la fréquence de répétition de tous ces mots clés confondus.

Exemple:
1. Liste de mots clés:
- A1: Maison
- A2: Décoration
- A3: Ardoise

2. B1: Titre: Ma maison, toute en ardoise.

3. C1: 2 (2 mots clés utilisés dans ma cellule de titre).

Bref, votre aide serait super apprécié!
J'ai essayé la fonction nb.si, et ça fonctionne pour une seule expression, mais quand j'additionne plusieurs fonctions nb.si pour couvrir toutes mes cellules de mots clés, et que j'entre un titre qui contient 2 mots clés, le compte retombe à 0. Comme si la formule ne reconnaissait plus le mot clé précis dans ma cellule quand j'en ajoutait un second...

SOS?
A voir également:

10 réponses

ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Bonjour

Sans macro, je ne vois pas, mais tu auras peut être des propositions
Un début de réponse avec macro
https://www.cjoint.com/?3ItpHEcGHTB

Bonne suite
0
Marie_88 Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
Wow, mais ça fonctionne parfaitement ça!! Par contre, je ne suis pas assez familière avec Excel pour faire du code dans visual basics... :S

Est-ce que je peux t'envoyer mon fichier...?
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Bonjour,

Tout dépend de la façon dont tu as écrit ta formule, si par exemple le mot maison est en début ou fin ou encore au centre d'un texte, il faut utiliser le joker *
et si j'ai bien compris ta demande, voila un type de formule avec NB.SI

=NB.SI(A1:A20;"*maison*")

ou pour plusieurs BN.SI
=NB.SI(A1:A20;"*maison*")+NB.SI(A1:A20;"*ardoise*")

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
Marie_88 Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour Mike,
Merci pour ta réponse ultra-rapide!
En fait voici la formule que je tappais:

=nb.si(D4:D5, C26)+nb.si(D4:D5, C27)+...

Mon titre n'est que dans la cellule D5, mais comme je devais obligatoirement mettre une plage, et que la cellule D4 était vide, j'ai sélectionné les deux.

C26, C27 et ... sont les cellules dans lesquelles mes mots clés sont contenus. Donc étant donné que je réfère à la cellule, et non pas au mot en particulier, je ne sais pas si le joker peut s'appliquer?

Bref, merci à l'avance! :)
0
tontong Messages postés 2572 Date d'inscription   Statut Membre Dernière intervention   1 062
 
Avec les références du #1 =NB.SI(B1;"*"&$A$1&"*")+NB.SI(B1;"*"&$A$2&"*")+NB.SI(B1;"*"&$A$3&"*")
0
Marie_88 Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
Ok, merci!
Sauf qu'avec 'Nb.Si', la première expression à l'intérieure de la parenthèse doit obligatoirement être une plage... malheureusement... une seule cellule ca ne fonctionne pas.
0
tontong Messages postés 2572 Date d'inscription   Statut Membre Dernière intervention   1 062
 
Bonjour à tous,
On peut aussi compter avec un sommeprod:
=SOMMEPROD(ESTNUM(CHERCHE($A$1:$A$3;B1))*1)
On a le même inconvénient qu'avec une addition de NB.SI: " Sa maisonnette gardoise" donne le même résultat.
0
Vaucluse Messages postés 26496 Date d'inscription   Statut Contributeur Dernière intervention   6 438
 
Bonjour tous aussi

Totong
pour régler cet inconvénient,il devrait suffire de rentre un blanc derrière le nom cherché

Marie pour info:
NB.SI fonctionne très bien avec une seule cellule

crdlmnt
0
tontong Messages postés 2572 Date d'inscription   Statut Membre Dernière intervention   1 062
 
Je pense que ça ne suffit pas!
Pour approcher du but il faudrait ajouter un caractère exotique, µ par exemple, avant et après chaque mot-critère (µmaisonµ), au début et à la fin de la phrase, et remplacer les espaces par ce µ (concaténation et Substitue) µsaµmaisonnetteµgardoiseµ. Ça complique un peu!
0
Marie_88 Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
Salut à vous deux!
J'ai réussi :) Voici la formule que j'ai finalement utilisée, et qui fonctionne à merveille, à la seule condition que toutes mes cellules de mots clés doivent avoir des mots à l'intérieur. Lorsque la cellule est vide, ça compte pour 1 sinon.

=NB.SI(D4:D5,"*"&C26&"*")+NB.SI(D4:D5,"*"&C27&"*")+NB.SI(D4:D5,"*"&C28&"*")+NB.SI(D4:D5,"*"&C29&"*")+NB.SI(D4:D5,"*"&C30&"*")+NB.SI(D4:D5,"*"&C31&"*")+NB.SI(D4:D5,"*"&C32&"*")+NB.SI(D4:D5,"*"&C33&"*")+NB.SI(D4:D5,"*"&C34&"*")
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Re,

si comme cela, adresse cellule à adapter

=NB.SI(A1:A20;"*"&C1&"*")
0
Marie_88 Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
Merci énormément pour votre temps, c'est réellement apprécié!!

Quand j'entre la formule : =NB.SI(D4:D5;"*"&C26&"*") dans ma cellule, j'ai toujours un message d'erreur qui semble boguer avec ma plage de formule... pourtant, aucune ligne cachée, rien de bizzare...

Vous avez une idée pourquoi ?
0
Marie_88 Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
Ah, j'ai simplement changé ';' pour ',' et ça a fonctionné
Merci Mike-31!
Un énorme merci pour votre aide à tous, vous êtes des super-heros-geeks!! :D
All the best!
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Re,

Contrôle ta cellule C26 si tu n'as pas une erreur de saisie comme par exemple un espace
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Re,

rapidement mais il doit y avoir plus court, je regarderais plus tard
en attendant en ajoutant une conditionnelle devant chaque NB.SI

=SI(C26<>"";NB.SI(D4:D5;"*"&C26&"*");0)+SI(C27<>"";NB.SI(D4:D5;"*"&C27&"*");0)

à compléter, mais comme tu as plus de sept imbrications conditionnelles regarde mon astuce pour les versions antérieures à 2007 sur ce lien

https://forums.commentcamarche.net/forum/affich-37641581-utiliser-plus-de-7-imbrications-si-dans-une-formule

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Re

La remarque de tontong (post #4) m'a donné quelques idées
Une solution macro, sans doute incomplète, qui permettrait de régler le cas de la maisonnette gardoise
https://www.cjoint.com/?3Itvrao8SxN

Bonne nuit à tous

lien modifié
0