
han_solo a écrit:
han_solo a écrit:"Madame Bovary dans l'ordre", il réécrit le roman de Flaubert en classant tous les mots dans l'ordre alphabétique
https://france3-regions.franceinfo.fr/g ... 84506.html
Funkyyy a écrit:Pourquoi ne pas plutôt faire subir tel traitement à Musso ou autres ?
Sub CompterOccurrencesDesMots()
Dim docText As String
Dim wordArray() As String
Dim wordDict As Object
Dim word As String
Dim i As Long
Dim cleanedWord As String
Dim result As String
' Créer un dictionnaire
Set wordDict = CreateObject("Scripting.Dictionary")
' Extraire le texte du document
docText = ActiveDocument.Content.Text
' Nettoyer le texte (remplacer ponctuation par espace)
docText = Replace(docText, ".", " ")
docText = Replace(docText, ",", " ")
docText = Replace(docText, ";", " ")
docText = Replace(docText, ":", " ")
docText = Replace(docText, "!", " ")
docText = Replace(docText, "?", " ")
docText = Replace(docText, vbCr, " ")
docText = Replace(docText, vbLf, " ")
' Séparer en mots
wordArray = Split(docText)
' Compter les mots
For i = LBound(wordArray) To UBound(wordArray)
cleanedWord = Trim(LCase(wordArray(i)))
If cleanedWord <> "" Then
If wordDict.exists(cleanedWord) Then
wordDict(cleanedWord) = wordDict(cleanedWord) + 1
Else
wordDict.Add cleanedWord, 1
End If
End If
Next i
' Afficher les résultats
result = "Occurrences des mots dans le document:" & vbCrLf & vbCrLf
For Each word In wordDict.Keys
result = result & word & ": " & wordDict(word) & vbCrLf
Next word
MsgBox result, vbInformation, "Analyse des mots"
End Sub
RESULTAT :
Une boîte de dialogue s’affichera avec la liste des mots et leur nombre d’occurrences dans le document.
Tu veux que je t’aide à adapter cette macro pour ignorer certains mots (comme les articles ou prépositions), ou pour exporter les résultats dans un tableau Word ou Excel ?
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 8 invités