Somme nombre dans cellules contenant du texte [Résolu/Fermé]

Messages postés
26
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
23 juin 2019
-
Bonjour,

J'ai le fichier des réponses de 476 personnes à un questionnaire, et pour chaque sujet, la ligne indique: le texte de la réponse cochée ET la valeur attribuée à cette réponse.

Par exemple pour le sujet 1 voici les réponses de la ligne (sachant qu'il y a 14 réponses:

0 NEVER / 2 SOMETIMES / 0 DEFINITELY / 0 USUALLY / 0 blabla/ 1 blabla/ 1 blabla / 1 blabla / 0 blabla / 2 blabla / 1 blabla / 2 blabla / 0 blabla / 1 blabla

Je voudrais donc additionner uniquement les chiffres.
Mon sujet 1 devrait donc avoir un score de 11.

Et je dois faire ça pour 475 autres sujets :)

HEEEELLLLLPPP!!!!

Cordialement :)
Afficher la suite 

10 réponses

Meilleure réponse
Messages postés
136
Date d'inscription
dimanche 2 novembre 2014
Statut
Membre
Dernière intervention
20 janvier 2015
3
1
Merci
Bonjour Sarahmel,
Un petit fichier exemple envoyé avec cjoint.com sera le bienvenu ;)

Sinon, il te suffit d'extraire le caractère de gauche de tes saisies, de les convertir en nombre et de les additionner.
Extraire le caractère gauche: fonction Gauche
Convertir en nombre: fonction Cnum
Additionner: fonction Somme

Ce qui donnerait pour la première ligne (en supposant que tes données soient en A1:N1 pour le premier sujet:

=SOMME(CNUM(GAUCHE(A1))+CNUM(GAUCHE(B1))+CNUM(GAUCHE(C1)+...CNUM(GAUCHE(N1)))).
Evidemment, les ... de la formules sont les répétitions de CNUM(Gauche(le nom de la cellule)).

Bonne journée.

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 59144 internautes nous ont dit merci ce mois-ci

Messages postés
136
Date d'inscription
dimanche 2 novembre 2014
Statut
Membre
Dernière intervention
20 janvier 2015
3
1
Merci
J'oubliais, ensuite, il suffit de copier la formule dans le reste de la colonne jusqu'à la ligne 475 :D

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 59144 internautes nous ont dit merci ce mois-ci

Messages postés
5333
Date d'inscription
lundi 16 avril 2012
Statut
Contributeur
Dernière intervention
27 juin 2019
330
1
Merci
Bonjour

Si toutes vos données sont bien dans une seule colonne (A pour mon exemple)et se présentent comme indiqué dans votre message.
Sélectionner les informations copier puis menu données convertir
Sélectionner délimité
Suivant
cocher espace
Suivant
Terminé

En colonne AN mettre cette formule

=AL10+AI10+AF10+AC10+Z10+W10+T10+Q10+O10+M10+J10+G10+D10+A10

Sélectionner la cellule et avec la souris double cliquer sur la poignée de recopie quand celle-ci devient une croix noir

Bonne journée

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 59144 internautes nous ont dit merci ce mois-ci

Messages postés
15905
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
17 août 2019
2780
1
Merci
Bonjour

essaies
=SI(NBVAL(A3:N3)<14;"";SOMME(CNUM(GAUCHE(A3:N3;1));A3:N3))

Formule matricielle à valider par « ctrl+maj+entrée » (et non directement par « entrée »), le curseur clignotant dans la barre de formule à copier vers le bas

Si la durée de calcul est longue sur 475 lignes, on passera par macro VBA...

Michel

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 59144 internautes nous ont dit merci ce mois-ci

Messages postés
1938
Date d'inscription
mercredi 27 juillet 2005
Statut
Membre
Dernière intervention
16 août 2019
753
1
Merci
Bonjour,

en supposant que les données sont dans une seule cellule (A1 par exemple) et que les valeurs numériques sont inférieures à 10 strictement, voici une formule matricielle qui fournit le résultat sans colonnes intermédiaires :
=SOMMEPROD(SIERREUR(1*STXT(A1;LIGNE(INDIRECT("1:"&NBCAR(A1)));1);0))

Si les valeurs numériques peuvent contenir plus d'un chiffre, une solution simple est d'utiliser la fonction MCONCAT de Laurent Longre (macro complémentaire Morefunc):
=EVAL(SUBSTITUE(SUPPRESPACE(MCONCAT(SIERREUR(--STXT(A1;LIGNE(INDIRECT("1:"&NBCAR(A1)));1);" ")));" ";"+"))


Ces 2 formules sont à valider par CTRL+MAJ+ENTER.

cordialement

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 59144 internautes nous ont dit merci ce mois-ci

Messages postés
49649
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
23 août 2019
10464
1
Merci
sarahmel, moi aussi j'ai zyeuté les diverses réponses, et surtout tes propres messages !

Nous ne savons pas si les réponses d'un même patient sont dans une ou 14 colonnes. Ainsi la proposition de PHILOU10120 aurait marché dans le cas de la colonne unique.
J'en profite pour lui dire qu'en AN2 il suffit de mettre la formule =SOMME(A2:AM2) ...
La proposition de JvDo dépend de la même hypothèse.

Nous ne savons pas si la valeur attribuée à chaque réponse peut dépasser 9.
Ainsi la proposition d'oz@work n'est juste que si on attribue une valeur inférieure à 10.
J'en profite pour lui dire que =CNUM(GAUCHE(A1))+CNUM(GAUCHE(B1))+ ... CNUM(GAUCHE(N1)) marche aussi bien ; la fonction SOMME est redondante ...
La proposition de michel_m est conditionnée par la même limitation : valeur<10.

Tu vois donc que le fichier qu'on te réclame depuis hier à 08:05 n'est pas superflu ... http://www.commentcamarche.net/forum/affich-31074071-somme-nombre-dans-cellules-contenant-du-texte#1

Salutations à toute la fine équipe !

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 59144 internautes nous ont dit merci ce mois-ci

oz@work
Messages postés
136
Date d'inscription
dimanche 2 novembre 2014
Statut
Membre
Dernière intervention
20 janvier 2015
3 -
Raymond, j'ai supposé que la limitation était <10 car Sarahmel parle de chiffre et non de nombre dans son premier message.
Ceci dit, il est vrai que si le chiffre en question devient un nombre, tout serait différent (voire même plus compliqué!) car il faudrait rechercher le premier espace afin de savoir le nombre de caractère du nombre.

Ma formule deviendrait d'ailleurs imbuvable mais permettrait ce genre de cas spécial (en supposant qu'il n'y ait pas d'espace avant le nombre):

=SOMME(CNUM(GAUCHE(A1;CHERCHE(" ";A1;1)));CNUM(GAUCHE(B1;CHERCHE(" ";B1;1);...;CNUM(GAUCHE(N1;CHERCHE(" ";N1;1)))))

Pfiou, j'en suis malade rien que de penser à écrire une telle formule!!!
Raymond PENTIER
Messages postés
49649
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
23 août 2019
10464 -
Je te suis 5 sur 5 !
Mais comme certains utilisent indifféremment NOMBRE et CHIFFRE, on ne peut pas s'y fier ...
Et on peut craindre que l'échelle de notation aille de 0 à 10 ! Rien que la note 10 sème le b... !
oz@work
Messages postés
136
Date d'inscription
dimanche 2 novembre 2014
Statut
Membre
Dernière intervention
20 janvier 2015
3 -
J'avoue que ce peut-être le cas.
Messages postés
136
Date d'inscription
dimanche 2 novembre 2014
Statut
Membre
Dernière intervention
20 janvier 2015
3
1
Merci
De rien Sarahmel ;)
Je ne pense pas qu'il y ait une formule du genre "=SOMME(CNUM(GAUCHE(toutes les cellules de A2 à T2)))" car la fonction gauche ne prend qu'un seul texte en paramètre alors que la fonction somme en prend plusieurs.J'ai testé diverses manipulations de formules, en vain.
C'est vrai que cette formule est assez longue à écrire mais, une fois écrite, on peut la copier sur le reste du tableau sans soucis.

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 59144 internautes nous ont dit merci ce mois-ci

Messages postés
26
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
23 juin 2019
2
0
Merci
Merci beaucoup oz@work!!! je ne connaissais pas cette fonction cnum!
Mais il n'y aurait pas moyen de simplifier un tout petit peu la formule?
Un truc du genre = SOMME(CNUM(GAUCHE(toutes les cellules de A2 à T2))) ???
Mais merci beaucoup ça me permet déjà de travailler sur les 477 scores :)
Messages postés
26
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
23 juin 2019
2
0
Merci
Loooll!! c'est vrai que c'est compliqué tout ça!
@Raymond: oui, sauf que c'est pas moi qui ai saisi les données. Ce sont les résultats d'une étude clinique que je dois analyser. DU coup, je dois faire avec les 14 réponses de 477 patients... :)

Merci à tous d'avoir pris le temps de me répondre! Je vais zyeuter (à l'ancienne!) tout ça tranquillement et reviendrai vous dire ce que ça donne!
Messages postés
49649
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
23 août 2019
10464
-1
Merci
Bonjour sarahmel.

Tu vois ? Beaucoup de formules compliquées, alors qu'il aurait été si simple, à la création du fichier, de saisir la valeur et le texte de chaque réponse dans des colonnes distinctes !
Raymond PENTIER
Messages postés
49649
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
23 août 2019
10464 -
Des votes négatifs ! Je m'y attendais un peu, je dois dire ...
Or qu'il y a-t-il de faux ou d'insultant dans mon observation ?
Je veux seulement mettre en évidence qu'avant de créer un (gros) fichier il faut un peu réfléchir à l'usage qu'on en fera et aux manipulations qu'il subira, afin de le concevoir de manière optimale.
Si j'ai perturbé deux personnes, j'en suis désolé, mais je ne retire rien à ce que j'ai écrit.