[Writer] Affichage des statistiques détaillées d'un texte

Vos meilleures macros et portions de code sont publiées dans cette section.
Aucun support sur une question de programmation ici !

Modérateur : Vilains modOOs

Règles du forum
Aucune question dans cette section !
Celle-ci rassemble les meilleures macros et portions de code. Vous pouvez en revanche commenter ou argumenter le code exposé. Vous pouvez même remercier l'auteur (cela fait toujours plaisir) en indiquant par exemple dans quel cadre ou contexte vous en avez eu l'utilité.
Si vous avez à poster quelque chose, faites-le depuis la section Macros et API et demandez à un modérateur de l'y déplacer.
ThierryM
Membre enthOOusiaste
Membre enthOOusiaste
Messages : 437
Inscription : 26 nov. 2006 11:29
Localisation : Les Corbières

[Writer] Affichage des statistiques détaillées d'un texte

Message par ThierryM »

Bonjour à tous,
Il faut reconnaître que OOo est plutôt pauvre concernant les statistiques d'un texte (par rapport à la concurrence qui affiche ces infos via la barre de statut).
J'ai donc planché sur un outil permettant de pallier à cette lacune.
Voici les fils dont je me suis servis (en plus de la bible "Programmation OpenOffice.org 3.1" de Bernard Marcelly et Laurent Godard) :
http://user.services.openoffice.org/fr/ ... =8&t=20505 (avec participation d'Alain de la Chaume)
http://user.services.openoffice.org/fr/ ... f=8&t=2765 (pour le comptage de ligne, avec macro fournie par Pierre-Yves Samyn)
http://user.services.openoffice.org/fr/ ... 57&start=0 (apports de Dude et Hagar de l'Est)

Je mets donc à la disposition de la communauté un modeste outil qui permet de calculer des statistiques utiles pour un texte :
  • Calcul du nombre de mots (erroné, tout comme WORD 2007, car les signes encadrés par des espaces comptent comme un mot par exemple les ":" : voir le commentaire dans la macro pour avoir plus de détails)
  • Calcul du nombre de caractères
  • Calcul du nombre d'espaces
  • Calcul du nombre de tabulations
  • Autres calculs utiles
CaptureStatistiques2.png
Cet outil mériterait d'être amélioré, adapté pour faire ces statistiques sur une sélection, une section ... On pourrait même s'en inspirer pour faire une extension (pourquoi pas ?). Mais selon moi, il peut être utile pour comprendre un peu mieux le comptage de mots ou de caractères et surtout comment obtenir ces statistiques via des macros (n'hésitez pas à étudier le code).

En espérant que ça aide,
Cordialement,

Thierry

Edit du 18/01/2010 : Rajout de calculs directs fournis par des fonctions existantes

Code : Tout sélectionner

 'Statistiques directes du document
 nMotsStat=ThisComponent.WordCount      'Compte le nombre de mots (attention " : " compte pour un mot... comme dans WORD 2007)
 nCaracteres=ThisComponent.CharacterCount    'Compte le nombre de caractères
 nLigDirectStat=ThisComponent.CurrentController.LineCount    'Compte le nombre de lignes non vides
 nParagDirectStat=ThisComponent.ParagraphCount     'Compte le nombre de paragraphes
 nPageDirectStat=ThisComponent.CurrentController.PageCount     'Compte le nombre de page
Edit du 21/01/2010 : Mise à jour du fichier proposé au téléchargement
Comptage des mots en adéquation avec la langue française :
  • Prise en compte des apostrophes (qui n'existent pas en langue anglaise et qui fait que "l'arbre"compte pour un seul mot)
  • Prise en compte des tirets qui séparent les mots composés.
  • La ponctuation avec des signes doubles n'entre plus dans le nombre de mots (ce fonctionnement par défaut est dû au fait que les anglosaxons ne laissent pas d'espace devant ces signes de ponctuation doubles contrairement au français).
  • Prise en compte des guillemets, des parenthèses, des points et des virgules précédés d'un espace afin qu'ils ne soient pas comptabilisés avec les mots.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibreOffice Version: 7.6.2 / Linux Mint Mate Edition 21.2 / Pourquoi privilégier les formats de fichiers ouverts ?