[Résolu] Compter les mots d'un fichier Calc

Discussions à propos du tableur Calc.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur: Vilains modOOs

Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.

[Résolu] Compter les mots d'un fichier Calc

Messagepar Houlala » 06 Juin 2007 16:40

Bonjour,

Comment peut-on compter les mots d'un fichier Calc ?

Merci !
Dernière édition par Houlala le 07 Juin 2007 06:38, édité 1 fois.
2.2.0 sous Windows XP SP2
Houlala
Fraîchement OOthentifié
 
Message(s) : 8
Inscrit le : 06 Juin 2007 16:31

Messagepar vinc-mai » 06 Juin 2007 17:33

Qu'appelez-vous mot?



Dans fichier->propriétés->statistique, le nombre de cellules est affichée.
Par contre, pour un nombre de mots, je voie pas.
A moins de l'enregistrer au format texte (csv par exemple) puis d'utiliser un éditeur de texte pour compter. Par contre, il ne devrait pas faire la différence entre les mots et nombres.
(Ooo 2.3 sur windows XP)
OOo 2.3 sur Ubuntu 7.10
Avatar de l’utilisateur
vinc-mai
PassiOOnné
PassiOOnné
 
Message(s) : 540
Inscrit le : 22 Déc 2005 15:13
Localisation : Rhône-Alpes

Messagepar Houlala » 06 Juin 2007 17:49

Bonjour et merci,

Par mot j'entendais bien un assemblage de lettres, il peut y en avoir plusieurs par cellules et il peut y avoir des cellules vides.

La technique de sauver en texte CSV me convient bien. J'ai aussi essayé un utilitaire "anycount" prévu pour ça, mais il plante à chaque coup avec Calc.

Si quelqu'un connait un utilitaire semblable ou une macro qui fonctionne avec Calc, ça m'intéresse.
2.2.0 sous Windows XP SP2
Houlala
Fraîchement OOthentifié
 
Message(s) : 8
Inscrit le : 06 Juin 2007 16:31

Messagepar Jeff » 06 Juin 2007 23:16

Bonsoir Houlala,

Question trés technique, et un peu vague...

Dans ce Post-it : Quelques exemples de fonctions dans Calc MichelXld donne une formule qui compte le nombre de "a" dans la cellule A1.
On pourrait l'adapter pour compter le nombre d'espace :

Code : Tout sélectionner   AgrandirRéduire
=NBCAR(A1)-NBCAR(SUBSTITUE(A1;" ";""))+1


J'ai rajouté +1 car logiquement, tu as un mot de plus que les espaces.
Si tu as des espaces accidentels, il faut utiliser auparavant une fonction SUPPRESPACE.

Maintenant, pour compter sur une feuille complète :?

A + :wink:
À lire avant tout !

Pour télécharger Apache OpenOffice

AOO 4.1.7 sur Emmabuntus Debian Edition 3 Buster 32 bits, sur Ubuntu 18.04.1 x64 (Bionic Beaver), et sur Win 10 pro x64
Jeff
GourOOu
GourOOu
 
Message(s) : 8341
Inscrit le : 18 Sep 2006 10:40
Localisation : France

Messagepar Jeff » 06 Juin 2007 23:23

Jeff a écrit:Maintenant, pour compter sur une feuille complète

Tu peux apparemment passer par une fonction de matrice ; par exemple, pour compter les espaces + 1 (donc les mots) de la cellule A1, A2 et A3 :
Code : Tout sélectionner   AgrandirRéduire
=SOMME(NBCAR(A1:A3)-NBCAR(SUBSTITUE(A1:A3;" ";""))+1)


à valider matriciellement (à la place de taper Entrée à la fin de la formule, valide par Ctrl+Maj+Entrée), à ce moment là, Calc rajoute des accolades autour de ta formule.

A +
À lire avant tout !

Pour télécharger Apache OpenOffice

AOO 4.1.7 sur Emmabuntus Debian Edition 3 Buster 32 bits, sur Ubuntu 18.04.1 x64 (Bionic Beaver), et sur Win 10 pro x64
Jeff
GourOOu
GourOOu
 
Message(s) : 8341
Inscrit le : 18 Sep 2006 10:40
Localisation : France

Messagepar Houlala » 07 Juin 2007 06:18

Génial, merci Jeff, ça marche parfaitement !!!
2.2.0 sous Windows XP SP2
Houlala
Fraîchement OOthentifié
 
Message(s) : 8
Inscrit le : 06 Juin 2007 16:31

Messagepar Jeff » 07 Juin 2007 06:23

Content que cela te convienne :D

Pour rajouter la balise [Résolu] dans ton titre, c'est par ici :arrow: http://user.services.openoffice.org/fr/ ... html#18488

A + :wink:
À lire avant tout !

Pour télécharger Apache OpenOffice

AOO 4.1.7 sur Emmabuntus Debian Edition 3 Buster 32 bits, sur Ubuntu 18.04.1 x64 (Bionic Beaver), et sur Win 10 pro x64
Jeff
GourOOu
GourOOu
 
Message(s) : 8341
Inscrit le : 18 Sep 2006 10:40
Localisation : France

Messagepar Jeff » 07 Juin 2007 06:29

Ah, j'oubliais : dans le Tutoriel sur les fonctions de matrice, mes recherches ont abouties au fait qu'une fonction matricielle ne peut agir que sur une plage de 128x128 cellules ; je ne sais pas si cette limite est toujours d'actualité...

A +
Dernière édition par Jeff le 13 Fév 2010 14:00, édité 1 fois.
À lire avant tout !

Pour télécharger Apache OpenOffice

AOO 4.1.7 sur Emmabuntus Debian Edition 3 Buster 32 bits, sur Ubuntu 18.04.1 x64 (Bionic Beaver), et sur Win 10 pro x64
Jeff
GourOOu
GourOOu
 
Message(s) : 8341
Inscrit le : 18 Sep 2006 10:40
Localisation : France

Messagepar Houlala » 07 Juin 2007 06:37

J'ai essayé sur une colonne de 3000 cellules et le compte était bon. Ok, je vais mettre [résolu], merci encore et bonne journée !
2.2.0 sous Windows XP SP2
Houlala
Fraîchement OOthentifié
 
Message(s) : 8
Inscrit le : 06 Juin 2007 16:31

Messagepar Jeff » 07 Juin 2007 06:45

Je ne pense pas que ce soit la largeur ou la hauteur de ta plage qui compte, mais bien le nombre de cellules, soit 128x128= 16384 cellules.

Merci pour la balise qui facilitera les futures recherches :super:
À lire avant tout !

Pour télécharger Apache OpenOffice

AOO 4.1.7 sur Emmabuntus Debian Edition 3 Buster 32 bits, sur Ubuntu 18.04.1 x64 (Bionic Beaver), et sur Win 10 pro x64
Jeff
GourOOu
GourOOu
 
Message(s) : 8341
Inscrit le : 18 Sep 2006 10:40
Localisation : France

Messagepar Vandeput » 07 Juin 2007 07:47

Bonjour,

Je m'y prends probablement fort mal, mais la formule de Jeff me renvoie une valeur erronée lorsqu'il y a des cellules vides dans la plage de comptage (voir pièce jointe).

Il me semble que le +1 dans la formule compte également les cellules vides pour une unité.

Je propose une autre formule qui renvoie le bon résultat, mais qui reste à vérifier !

http://user.services.openoffice.org/fr/ci-joint/fichier/2007/06/07-084250.age

PS 1 : j'ai à nouveau une extension bizarre, peut-être faudra-t-il la remplacer par .ods
PS 2 : j'ai décalé le tableau d'une ligne et d'une colonne en oubliant d'adapter les formules en texte.
Il faut donc y remplacer A1:C8 par B2:D9
andré
2.2 sous Windows XP
Vandeput
Membre enthOOusiaste
Membre enthOOusiaste
 
Message(s) : 409
Inscrit le : 12 Fév 2007 15:33
Localisation : Bruxelles

Messagepar Jeff » 07 Juin 2007 19:04

Salut André,
Vandeput a écrit:la formule de Jeff me renvoie une valeur erronée lorsqu'il y a des cellules vides dans la plage

+1 :super: j'ai pas pensé aux cellules vides
Vandeput a écrit:PS 1 : j'ai à nouveau une extension bizarre, peut-être faudra-t-il la remplacer par .ods

Tu devrai contacter en MP Bidouille ou C-Stephan pour connaitre l'origine de ce problème.
Pour les utilisateur de Firefox, faire simplement Ouvrir avec puis sélectionner soffice.exe (généralement dans ProgramFiles->OOo2.2->Program), Calc s'ouvre alors automatiquement.

Encore une modification simpose, s'il n'y a qu'un mot, un espace est compté, comment penses-tu que l'on pourrait faire ?

A + :wink:
À lire avant tout !

Pour télécharger Apache OpenOffice

AOO 4.1.7 sur Emmabuntus Debian Edition 3 Buster 32 bits, sur Ubuntu 18.04.1 x64 (Bionic Beaver), et sur Win 10 pro x64
Jeff
GourOOu
GourOOu
 
Message(s) : 8341
Inscrit le : 18 Sep 2006 10:40
Localisation : France

Messagepar Vandeput » 07 Juin 2007 19:23

Bonsoir Jeff,

Il me semble que la formule que j'ai proposée sous ma pièce jointe renvoie le bon résultat.
Pour moi "le compte est bon".

A moins que tu aies trouvé autre chose qui ne fonctionne pas.
andré
2.2 sous Windows XP
Vandeput
Membre enthOOusiaste
Membre enthOOusiaste
 
Message(s) : 409
Inscrit le : 12 Fév 2007 15:33
Localisation : Bruxelles

Messagepar Jeff » 07 Juin 2007 19:44

C'est rien, c'est les yeux... :marto:
À lire avant tout !

Pour télécharger Apache OpenOffice

AOO 4.1.7 sur Emmabuntus Debian Edition 3 Buster 32 bits, sur Ubuntu 18.04.1 x64 (Bionic Beaver), et sur Win 10 pro x64
Jeff
GourOOu
GourOOu
 
Message(s) : 8341
Inscrit le : 18 Sep 2006 10:40
Localisation : France

Messagepar Vandeput » 08 Juin 2007 05:47

Bonjour,

C'est toute la différence entre "voir" et "regarder".

Il reste néanmoins deux problèmes :
- un espace devant ou derrière une chaîne de caractères
- un espace dans une cellule sans texte
Dans les deux cas, la formule compte un mot en plus.

Pour le premier problème j'ai trouvé une solution :
=SOMME(NBCAR(SUPPRESPACE(B2:D9))-NBCAR(SUBSTITUE(B2:D9;" ";"")))+NBVAL(B2:D9)

Pour le second, pas (encore).
andré
2.2 sous Windows XP
Vandeput
Membre enthOOusiaste
Membre enthOOusiaste
 
Message(s) : 409
Inscrit le : 12 Fév 2007 15:33
Localisation : Bruxelles

Messagepar Vandeput » 08 Juin 2007 08:09

Et voilà :

=SOMME(NBCAR(SUPPRESPACE(B2:D9))-NBCAR(SUBSTITUE(B2:D9;" ";"")))+NBVAL(B2:D9)-NB.SI(B2:D9;" ")
formule matricielle.

Le dernier point non résolu : plusieurs espaces sans chaîne de caractère dans une cellule.
andré
2.2 sous Windows XP
Vandeput
Membre enthOOusiaste
Membre enthOOusiaste
 
Message(s) : 409
Inscrit le : 12 Fév 2007 15:33
Localisation : Bruxelles

Messagepar Vandeput » 08 Juin 2007 15:28

Re,

=SOMME(NBCAR(SUPPRESPACE(B2:D9))-NBCAR(SUBSTITUE(B2:D9;" ";""))+(NBCAR(SUBSTITUE(B2:D9;" ";""))>0))
formule matricielle (à valider par Ctrl+Maj+Entrée)

Dernier problème résolu, ... je l'espère.

Edition :
Une chaine de caractères provenant d'un format est comptabilisé suivant sa valeur et non suivant son format.
Exemple : =AUJOURDHUI() au Format personnalisé JJJ JJ MMM AA sera comptabilisé pour une chaine,
par contre : =TEXTE(AUJOURDHUI;"JJJ JJ MMM AA") sera comptabilisé pour quatre chaines.
andré
2.2 sous Windows XP
Vandeput
Membre enthOOusiaste
Membre enthOOusiaste
 
Message(s) : 409
Inscrit le : 12 Fév 2007 15:33
Localisation : Bruxelles

Messagepar Vandeput » 09 Juin 2007 13:44

Re,

Dernier petit correctif (je l'espère).

Pour ne pas devoir valider en matricielle, remplacer dans la formule proposée sous mon denier post, SOMME par SOMMEPROD.
andré
2.2 sous Windows XP
Vandeput
Membre enthOOusiaste
Membre enthOOusiaste
 
Message(s) : 409
Inscrit le : 12 Fév 2007 15:33
Localisation : Bruxelles


Retour vers Tableur

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : yclik et 16 invité(s)