Come categorizzare stringhe di testo in base a parole chiave in Excel?
Quando si lavora con grandi volumi di dati in Excel, organizzare le voci di testo in base a parole chiave specifiche è spesso essenziale per semplificare la creazione di report o l’analisi dei dati. Immaginiamo, ad esempio, di avere un elenco di stringhe di testo nella colonna A e di voler categorizzare ciascuna voce in base alle parole chiave indicate nella colonna D: ogni cella contenente «Kutools» andrebbe assegnata alla categoria «Extendoffice», mentre qualsiasi stringa con «calcio» o «basket» verrebbe classificata come «Sport». Lo screenshot seguente illustra proprio uno scenario di questo tipo. Eseguire queste operazioni manualmente può rivelarsi non solo dispendioso in termini di tempo, ma anche soggetto a errori, soprattutto all’aumentare della quantità di dati da elaborare. In questo articolo scopriremo metodi pratici ed efficienti per categorizzare automaticamente tali stringhe di testo, ottimizzando così la velocità di organizzazione dei dati e migliorando la qualità complessiva del flusso di lavoro in Excel.

Categorizza un elenco di stringhe di testo in base a parole chiave con una formula matriciale
Categorizza stringhe di testo in base a parole chiave con codice VBA
Categorizza un elenco di stringhe di testo in base a parole chiave con una formula matriciale
Puoi utilizzare una formula matriciale per assegnare automaticamente categorie alle stringhe di testo in base alle parole chiave corrispondenti, soluzione particolarmente utile con grandi set di dati in cui l’ordinamento manuale non è fattibile. Le formule matriciali offrono potenti capacità di riconoscimento di schemi in Excel, consentendoti di creare un collegamento dinamico tra i dati e i gruppi di parole chiave. Questo approccio è utile in scenari quali l’etichettatura automatica dei feedback dei clienti, l’organizzazione dell’inventario o l’ordinamento delle email in base al contenuto.
1. Organizza i tuoi dati come necessario: di solito le stringhe di testo (da categorizzare) si trovano nella colonna A, le parole chiave nella colonna D e le relative categorie nella colonna E. Consulta lo screenshot d’esempio qui sotto per vedere una disposizione tipica dei dati.

2. Accedi a una cella vuota adiacente ai tuoi dati originali (ad esempio, inizia dalla cella B2 se le tue stringhe si trovano nell’intervallo A2:A10) e inserisci la seguente formula matriciale:
- Suggerimenti: Nella seguente formula:
- $E$2:$E$8: è l'intervallo contenente i nomi delle categorie da assegnare a ciascuna stringa di testo;
- $D$2:$D$8: è la colonna contenente le parole chiave che si desidera trovare all'interno delle stringhe di testo;
- A2: è la cella contenente la stringa di testo da analizzare e categorizzare.
Per ottenere i migliori risultati, assicurati che l’elenco delle parole chiave e le relative categorie siano perfettamente allineati riga per riga e che negli intervalli di ricerca non vi siano celle vuote. Controlla con attenzione la presenza di errori di battitura o spazi superflui nelle parole chiave, per evitare mancate corrispondenze.
3. Premi Ctrl + Maiusc + Invio (invece del solo tasto Invio) dopo aver inserito la formula. Excel racchiuderà automaticamente la formula tra parentesi graffe, indicando che si tratta di una formula matriciale. In questo modo verrà assegnata la categoria corretta alla prima stringa. Poi, usa il quadratino di riempimento per estendere la formula lungo tutta la colonna e categorizzare automaticamente tutte le voci del tuo elenco. Vedi lo screenshot:

Quando utilizzi formule matriciali, è fondamentale usare la combinazione di tasti corretta; inoltre, durante la copia della formula, assicurati di non interrompere la struttura matriciale. Se il tuo Intervallo dati si espande, aggiorna gli intervalli nella formula per garantire una categorizzazione accurata.

Sblocca la magia di Excel con KUTOOLS AI
- Esecuzione intelligente: Esegui operazioni sulle celle, analizza i dati e crea grafici, il tutto con comandi semplici e intuitivi.
- Formule personalizzate: crea formule su misura per ottimizzare i tuoi flussi di lavoro.
- Codifica VBA: Scrivi e implementa codice VBA in modo semplice e immediato.
- Interpretazione delle formule: Comprendi con facilità anche le formule più complesse.
- Traduzione del testo: Superate le barriere linguistiche direttamente nei vostri fogli di calcolo.
Categorizza stringhe di testo in base a parole chiave con codice VBA
Se devi categorizzare regolarmente grandi volumi di stringhe di testo e cerchi una soluzione flessibile e automatizzata, VBA ti offre un metodo per elaborare dinamicamente i dati e assegnare categorie in base alle corrispondenze con parole chiave. Questo approccio è ideale per utenti avanzati che desiderano personalizzare le proprie regole di categorizzazione o integrarle in flussi di lavoro automatizzati. Una macro VBA può ridurre drasticamente il carico di lavoro manuale e garantire una gestione robusta degli errori per gli abbinamenti personalizzati tra parole chiave e categorie.
1. Apri l’Editor di VBA in Excel facendo clic su Strumenti di sviluppo > Visual Basic. Nella finestra visualizzata, vai su Inserisci > Modulo per creare un nuovo modulo. Copia e incolla il seguente codice VBA nel modulo:
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. Per eseguire la macro, fai clic sul pulsante
«Esegui» oppure premi F5 nella finestra di VBA. La macro elaborerà tutte le voci nella colonna A a partire dalla riga 2, cercando le parole chiave elencate nella colonna D e inserendo la categoria corrispondente della colonna E nella colonna B.
Ricorda di adeguare gli intervalli delle parole chiave o delle categorie se il tuo elenco supera l’esempio mostrato. Se necessario, personalizza la macro per gestire corrispondenze multiple o sovrapposte, oppure per assegnare categorie predefinite agli elementi privi di corrispondenza. Effettua sempre un backup dei tuoi dati prima di eseguire nuovo codice e salva la cartella di lavoro in formato abilitato alle macro (.xlsm) per poterla riutilizzare in futuro.
Scarica il file di esempio
Clicca per scaricare il file di esempio!
Altri articoli correlati sulla categorizzazione del testo:
- Categorizza dati In base al valore in Excel
- Supponiamo che tu debba categorizzare un elenco di dati in base al valore: ad esempio, se un dato è maggiore di 90, viene classificato come “Alto”; se è compreso tra 60 e 90, come “Medio”; se è inferiore a 60, come “Basso”. In che modo puoi svolgere questo compito in Excel?
- Assegna un valore o una categoria in base a un intervallo numerico
- Questo articolo illustra come assegnare un valore o una categoria in base a un intervallo limitato in Excel. Ad esempio, se il numero rientra tra 0 e 100, viene assegnato il valore 5; se è compreso tra 101 e 500, il valore assegnato è 10; infine, per l’intervallo da 501 a 1000, viene assegnato 15. Il metodo descritto ti permetterà di completare questa operazione in modo rapido ed efficace.
- Calcola o assegna il voto in lettere in Excel
- Assegnare un voto in lettere a ciascuno studente in base al punteggio ottenuto è un compito comune per gli insegnanti. Ad esempio, ho definito una scala di valutazione in cui i punteggi da 0 a 59 corrispondono a F, da 60 a 69 a D, da 70 a 79 a C, da 80 a 89 a B e da 90 a 100 ad A, come mostrato nello screenshot seguente. In Excel, come puoi calcolare rapidamente e facilmente il voto in lettere partendo dal punteggio numerico?
- Assegna un numero progressivo ai valori duplicati o univoci
- Se hai un elenco di valori contenente alcuni duplicati, è possibile assegnare un numero progressivo ai valori duplicati o univoci? Ciò significa dare un ordine sequenziale ai Valori duplicati o ai valori univoci. In questo articolo illustrerò alcune formule semplici per aiutarti a risolvere questo compito in Excel.
I migliori strumenti per la produttività in ufficio
Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività del 80 %
- Super Barra delle formule (modifica facilmente più righe di testo e formule); Layout di lettura (leggi e modifica con facilità un gran numero di celle); Incolla in Intervallo di filtro...
- Unisci celle/righe/colonne e conserva i dati; dividi il contenuto delle celle; combina righe duplicate e calcola somma/media…; previeni voci duplicate; confronta intervalli…
- Seleziona duplicati o valori univoci nelle righe; Seleziona righe vuote (tutte le celle sono vuote); Super Trova e ricerca fuzzy in molte cartelle di lavoro; selezione casuale…
- Copia esatta di celle multiple senza modificare i riferimenti delle formule; creazione automatica di riferimenti a più fogli; inserisci punti elenco, caselle di controllo e molto altro...
- Formule preferite e inserimento rapido, intervalli, grafici e immagini; crittografa le celle con password; crea un elenco di invio e invia email...
- Estrai testo, aggiungi testo, rimuovi caratteri da una posizione specifica, elimina spazi; crea e stampa statistiche dei dati della pagina; converti il contenuto delle celle in commenti e viceversa...
- Super Filtri (salva e applica schemi di filtro ad altri fogli); Ordinamento avanzato per mese, settimana, giorno, frequenza e molto altro; Filtro speciale per grassetto, corsivo…
- Combina cartelle e fogli di lavoro; unisci tabelle in base a una colonna chiave; suddividi i dati in più fogli; converti in batch file xls, xlsx e PDF...
- Raggruppa la tabella pivot per numero di settimana, giorno della settimana e altro ancora...Mostra le celle sbloccate e blocca la selezione con colori diversi;Evidenzia le celle contenenti formule o nomi...
- Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede della stessa finestra, invece che in finestre separate.
- Aumenta la tua produttività del 50 % e riduci centinaia di clic del mouse ogni giorno!