Comment catégoriser des chaînes de texte en fonction de mots-clés dans Excel ?
Lorsque vous travaillez avec de grands ensembles de données dans Excel, il vous arrive souvent d’avoir besoin d’organiser des entrées textuelles selon des mots-clés spécifiques, ce qui facilite les processus de reporting ou d’analyse. Par exemple, supposez que vous disposiez d’une liste de chaînes de texte variées dans la colonne A. Vous souhaitez catégoriser chaque entrée en fonction de mots-clés répertoriés dans la colonne D — par exemple, regrouper toute cellule contenant « Kutools » sous « Extendoffice », ou attribuer toute chaîne mentionnant « football » ou « basketball » à la catégorie « Sport ». La capture d’écran suivante illustre un tel scénario. Effectuer cette tâche manuellement peut être long et source d’erreurs, surtout à mesure que votre jeu de données s’agrandit. Dans cet article, nous explorons des méthodes pratiques et efficaces pour catégoriser automatiquement ces chaînes de texte, afin d’améliorer la qualité de l’organisation des données et de fluidifier votre flux de travail dans Excel.

Catégoriser des chaînes de texte en fonction de mots-clés à l’aide d’un code VBA
Catégoriser une liste de chaînes de texte en fonction de mots-clés à l’aide d’une formule matricielle
Vous pouvez utiliser une formule matricielle pour attribuer automatiquement des catégories à des chaînes de texte selon des mots-clés correspondants — une solution particulièrement efficace avec de grands jeux de données, où le tri manuel n’est tout simplement pas envisageable. Les formules matricielles offrent dans Excel des capacités puissantes de reconnaissance de motifs, vous permettant d’établir un lien dynamique entre vos données et vos groupes de mots-clés. Cette approche s’avère précieuse dans des cas concrets tels que l’étiquetage automatique des retours clients, l’organisation d’un inventaire ou le tri d’e-mails en fonction de leur contenu.
1. Organisez vos données comme il se doit : placez généralement les chaînes de texte (à catégoriser) en colonne A, les mots-clés en colonne D et les catégories correspondantes en colonne E. Reportez-vous à la capture d’écran ci-dessous pour un exemple de disposition de jeu de données.

2. Accédez à une cellule vide adjacente à vos données d’origine (par exemple, commencez en B2 si vos chaînes se trouvent en A2:A10) et saisissez la formule matricielle suivante :
- Conseils: Dans cette formule :
- $E$2:$E$8: correspond à la plage contenant les noms de catégories à attribuer à chaque chaîne de texte ;
- $D$2:$D$8: correspond à la colonne contenant les mots-clés que vous souhaitez rechercher dans vos chaînes de texte ;
- A2 : cellule contenant la chaîne de texte à analyser et à catégoriser.
Pour de meilleurs résultats, assurez-vous que la liste des mots-clés et les catégories correspondantes sont alignées ligne par ligne et qu’il n’y a aucune cellule vide dans vos plages de recherche. Vérifiez attentivement les fautes de frappe ou les espaces superflus dans les mots-clés afin d’éviter les non-correspondances.
3. Appuyez sur Ctrl + Maj + Entrée (au lieu de simplement sur Entrée) après avoir saisi la formule. Excel entourera alors la formule d’accolades, indiquant qu’il s’agit d’une formule matricielle. La catégorie appropriée sera automatiquement générée pour la première chaîne. Ensuite, utilisez la poignée de recopie pour étirer la formule vers le bas de la colonne et catégoriser instantanément toutes les entrées de votre liste. Voir la capture d’écran :

Lorsque vous utilisez des formules matricielles, il est essentiel d’utiliser la bonne combinaison de touches, et lors de la copie de la formule, veillez à ne pas rompre la structure matricielle. Si votre Plage de données s’agrandit, mettez à jour les plages dans votre formule pour garantir une catégorisation précise.

Libérez la magie d’Excel avec Kutools IA
- Exécution intelligente : effectuez des opérations sur les cellules, analysez des données et créez des graphiques, le tout à partir de commandes simples.
- formules personnalisées : créez des formules sur mesure pour rationaliser vos flux de travail.
- Programmation VBA : Écrivez et implémentez du code VBA en toute simplicité.
- Interprétation de formules : Décryptez facilement les formules complexes.
- Traduction de texte : Franchissez les barrières linguistiques directement depuis vos feuilles de calcul.
Catégoriser des chaînes de texte en fonction de mots-clés à l’aide d’un code VBA
Si vous devez régulièrement classer de grands volumes de chaînes de texte et recherchez une solution automatisée et flexible, VBA vous permet de traiter les données de manière dynamique et d’attribuer des catégories en fonction de correspondances avec des mots-clés. Cette approche s’adresse aux utilisateurs avancés souhaitant personnaliser leurs règles de catégorisation ou les intégrer à d’autres flux de travail automatisés. Une macro VBA peut réduire considérablement la charge manuelle tout en assurant une gestion robuste des erreurs pour les associations personnalisées entre mots-clés et catégories.
1. Ouvrez l’éditeur VBA dans Excel en cliquant sur Outils de développement > Visual Basic. Dans la fenêtre qui s’ouvre, accédez à Insertion > Module pour créer un nouveau module. Copiez-collez le code VBA suivant dans le module :
Sub CategorizeByKeywords()
Dim cell As Range
Dim keywordRng As Range
Dim categoryRng As Range
Dim i As Integer
Dim lastRowA As Long
Dim lastRowD As Long
Dim matchFound As Boolean
On Error Resume Next
xTitleId = "KutoolsforExcel"
lastRowA = Cells(Rows.Count, "A").End(xlUp).Row
lastRowD = Cells(Rows.Count, "D").End(xlUp).Row
Set keywordRng = Range("D2:D" & lastRowD)
Set categoryRng = Range("E2:E" & lastRowD)
For Each cell In Range("A2:A" & lastRowA)
matchFound = False
For i = 1 To keywordRng.Rows.Count
If InStr(1, cell.Value, keywordRng.Cells(i, 1).Value, vbTextCompare) > 0 Then
cell.Offset(0, 1).Value = categoryRng.Cells(i, 1).Value
matchFound = True
Exit For
End If
Next i
If Not matchFound Then
cell.Offset(0, 1).Value = "" ' Assign blank if no keyword matched
End If
Next cell
End Sub 2. Pour exécuter la macro, cliquez sur le bouton
« Exécuter » ou appuyez sur F5 dans la fenêtre VBA. La macro traitera toutes les entrées de la colonne A à partir de la ligne 2, recherchera les mots-clés listés dans la colonne D et inscrira la catégorie correspondante issue de la colonne E dans la colonne B.
N’oubliez pas d’ajuster les plages mot-clé/catégorie si votre liste dépasse l’exemple affiché. Si nécessaire, personnalisez la macro pour gérer les correspondances multiples ou chevauchantes, ou pour attribuer des catégories par défaut aux éléments non reconnus. Sauvegardez toujours vos données avant d’exécuter un nouveau code, et enregistrez votre classeur au format compatible macro (.xlsm) afin de le réutiliser ultérieurement.
Télécharger le fichier exemple
Cliquez pour télécharger le fichier exemple !
Autres articles connexes sur la catégorisation de texte :
- Catégoriser des données Basé sur la valeur dans Excel
- Supposons que vous deviez catégoriser une liste de données Basé sur la valeur, par exemple : si une valeur est supérieure à 90, elle sera classée comme « Élevée » ; si elle est supérieure à 60 et inférieure à 90, elle sera classée comme « Moyenne » ; et si elle est inférieure à 60, elle sera classée comme « Faible ». Comment résoudre cette tâche dans Excel ?
- Attribuer une valeur ou une catégorie en fonction d’une plage numérique
- Cet article explique comment attribuer une valeur ou une catégorie en fonction d’une plage limitée dans Excel. Par exemple, si un nombre se situe entre 0 et 100, attribuez-lui la valeur 5 ; s’il est compris entre 101 et 500, attribuez 10 ; et pour la plage de 501 à 1000, attribuez 15. La méthode présentée ici vous permettra d’y parvenir facilement.
- Calculer ou attribuer une note alphabétique dans Excel
- Attribuer une note alphabétique à chaque élève en fonction de ses résultats est une tâche courante pour les enseignants. Par exemple, j’ai défini une échelle de notation selon laquelle les scores de 0 à 59 correspondent à un F, 60 à 69 à un D, 70 à 79 à un C, 80 à 89 à un B, et 90 à 100 à un A, comme illustré dans la capture d’écran ci-dessous. Dans Excel, comment obtenir rapidement et facilement une note alphabétique à partir d’un score numérique ?
- Attribuer un numéro séquentiel aux valeurs en double ou uniques
- Si vous disposez d’une liste de valeurs contenant des doublons, pouvez-vous leur attribuer un numéro séquentiel — qu’elles soient uniques ou répétées ? Autrement dit, il s’agit d’attribuer un ordre séquentiel aux valeurs en fonction de leur unicité ou de leur duplication. Dans cet article, nous vous présentons quelques formules simples pour réaliser cette opération facilement dans Excel.
Les meilleurs outils de productivité bureautique
Kutools pour Excel résout la majorité de vos problèmes et augmente votre productivité de 80 %
- Super Barre de formule (modifiez facilement plusieurs lignes de texte et de formules) ; Mode Lecture (lisez et modifiez aisément un grand nombre de cellules) ; Coller dans Plage de filtrage...
- Fusionner des cellules, lignes ou colonnes tout en conservant les données ; diviser le contenu des cellules ; combiner les lignes en double avec somme ou moyenne… empêcher les doublons dans les cellules ; comparer des plages…
- Sélectionner les doublons ou les éléments uniques dans les lignes ; Sélectionner les lignes vides (toutes les cellules sont vides) ; Super Recherche et recherche floue dans de nombreux classeurs ; sélection aléatoire…
- Copiez plusieurs cellules sans modifier les références de formule ; créez automatiquement des références vers plusieurs feuilles ; insérez des puces, des cases à cocher et bien plus encore…
- Favoris et insertion rapide de formules, plages, graphiques et images ; crypter les cellules avec mot de passe ; créer une liste de diffusion et envoyer des e-mails…
- Extraire du texte, ajouter du texte, supprimer les caractères à une position donnée, supprimer les espaces ; créer et imprimer les statistiques de la page de données ; convertir le contenu des cellules en commentaires et inversement...
- Super Filtre (enregistrez et appliquez des schémas de filtre à d’autres feuilles) ; Tri avancé par mois, semaine, jour, fréquence, etc. ; Filtre spécial par gras, italique…
- Combinez plusieurs classeurs et feuilles de calcul en un seul ; fusionnez des tableaux à partir d’une colonne clé ; répartissez vos données dans plusieurs feuilles ; convertissez en lot vos fichiers xls, xlsx et PDF…
- Regroupement dans un tableau croisé dynamique par numéro de semaine, jour de la semaine et bien plus encore…Afficher les cellules non verrouillées et verrouiller la sélection avec des couleurs distinctes ;Mettre en surbrillance les cellules contenant une formule ou un nom défini…
- Activez l’édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
- Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de 50 % et vous évite des centaines de clics de souris chaque jour !