calcul du nombre de chaque mot d'un texte

Le
eric.zzzz
Bonjour,
Comment calculer le nombre de chaque mot d'un texte (en word ou en pdf que =
je pourrais copier dans excel si nécessaire)
Merci d'avance
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 6
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
DanielCo
Le #25498612
Bonjour,

Oui... le nombre de quoi ? est-ce que tu peux donner un exemple ?

Cordialement.
Daniel


Bonjour,
Comment calculer le nombre de chaque mot d'un texte (en word ou en pdf que je
pourrais copier dans excel si nécessaire) Merci d'avance
MichD
Le #25498882
Bonjour,

Si tu es dans Word, tu peux utiliser ceci dans une macro :
MsgBox ActiveDocument.ComputeStatistics(Statistic:=wdStatisticWords, _
IncludeFootnotesAndEndnotes:=True) & " words"

Si tu es dans Excel et que tu veux déterminer le nombre de mots dans une
plage de cellules, tu peux le faire par formule. Regarde à cette adresse :

http://office.microsoft.com/en-ca/excel-help/count-the-number-of-words-in-a-cell-or-range-HA001034625.aspx


MichD
---------------------------------------------------------------
zzzz
Le #25499532
Je vais être plus précis, il ne s'agit pas de compter le nombre de mots d'un texte, mais le nombre de chaque mot : le 1er mot apparaît X fois, l e second Y fois, le 3me Z fois , etc... et cela pour tous les mots du texte .
Est-ce possible ?
merci
moi
Le #25499572
J'ai mis mon texte dans la colonne A sur 12000 lignes
NB : ce n'est pas à but professionnel, c'est juste ludique. En même tem ps je cherche sur quelques macros que j'ai
GL
Le #25499682
Le 24/06/2013 10:06, zzzz a écrit :
Je vais être plus précis, il ne s'agit pas de compter le nombre de mots d'un texte, mais le nombre de chaque mot : le 1er mot apparaît X fois, le second Y fois, le 3me Z fois , etc... et cela pour tous les mots du texte.
Est-ce possible ?
merci




Le problème, ça va être d'extraire la liste des mots.
Vous pouvez utiliser une regex, quelque chose du type : "S+"
(mais il faut aussi gérer les signes de ponctuation).

Une fois la liste de tous les mots extraites, le calcul
des fréquences ne pose pas de problème particulier
(le tri peut se faire dynamiquement à coup d'EQUIV + PETITE.VALEUR,
le calcul des fréquences se fait avec NB.SI...)

Cdt.
DanielCo
Le #25499802
Les données sont en colonne A sur sheets(1), les résultats sur
sheets(2).
Sub Compte()
Dim Tabl, Item, Txt As String, C As Range, Ligne As Long, Ctr, Dico
As Object
Dim Result() As Long
ReDim Result(0)
Ctr = -1
Tabl = Array("'", "(", ")", ".", ";") 'etc.
For Each Item In Tabl
[A:A].Replace Item, " "
Next Item
With Sheets(1)
For Each C In .Range("A1", .Cells(.Rows.Count, 1).End(xlUp))
Txt = Txt & " " & C.Value
Next C
Txt = Right(Txt, Len(Txt) - 1)
Tabl = Split(Txt, " ")
Set Dico = CreateObject("Scripting.Dictionary")
For Each Item In Tabl
If Item <> "" Then
If Not Dico.exists(Item) Then
Dico.Add Item, Item
Ctr = Ctr + 1
ReDim Preserve Result(Ctr)
Result(Ctr) = Result(Ctr) + 1
Else
pos = Application.Match(Item, Dico.items, 0)
Result(pos - 1) = Result(pos - 1) + 1
End If
End If
Next Item
End With
With Sheets(2)
For i = 0 To Dico.Count - 1
Ligne = Ligne + 1
Var = Dico.items
.Cells(Ligne, 1) = Var(i)
.Cells(Ligne, 2) = Result(i)
Next i
End With
End Sub

Daniel


J'ai mis mon texte dans la colonne A sur 12000 lignes
NB : ce n'est pas à but professionnel, c'est juste ludique. En même temps je
cherche sur quelques macros que j'ai
moi
Le #25499972
Tabl = Array("'", "(", ")", ".", ";") 'etc.

Ici tu proposes de saisir des mots en dur, le problème c'est que je veux le nombre de chaque mot du texte, c'est à dire tous les mots du texte...
moi
Le #25499962
Réponse à GL
Je ne sais pas ce qu'est un regex, je vais chercher
DanielCo
Le #25499952
Non, ce qui montre de surcroît que tu n'as pas testé la macro. Il
s'agit de remplacer ces caractères afin de ne pas compter à part "nom,"
et "nom".
Daniel


Tabl = Array("'", "(", ")", ".", ";") 'etc.

Ici tu proposes de saisir des mots en dur, le problème c'est que je veux le
nombre de chaque mot du texte, c'est à dire tous les mots du texte...
moi
Le #25500032
Le lundi 24 juin 2013 12:18:14 UTC+2, DanielCo a écrit :
Non, ce qui montre de surcroît que tu n'as pas testé la macro. Il

s'agit de remplacer ces caractères afin de ne pas compter à part "nom ,"

et "nom".

Daniel



exact, autant pour moi, j'ai voulu analyser le code avant de le tester; je vais essayer et je reviens
Publicité
Poster une réponse
Anonyme