Come ottenere il conteggio delle parole in Excel (usando formule semplici)

Vuoi ottenere il conteggio delle parole in Excel? Che ci crediate o no, Excel non ha un contatore di parole integrato.

Ma non preoccuparti.

Un bel gruppo di funzioni excel (o un po' di VBA se ti senti fantasioso) può facilmente farlo per te.

In questo tutorial, mostrerò un paio di modi per contare le parole in Excel usando semplici formule. E alla fine, tratteremo anche una tecnica per creare una formula personalizzata usando VBA che ti darà rapidamente il conteggio delle parole di qualsiasi testo in qualsiasi cella.

Formula per ottenere il conteggio delle parole in Excel

Prima di darti la formula esatta, esaminiamo rapidamente la logica per ottenere il conteggio delle parole.

Supponiamo di avere una frase come mostrato di seguito per la quale voglio ottenere il conteggio delle parole.

Sebbene Excel non possa contare il numero di parole, può contare il numero di spazi in una frase.

Quindi, per ottenere il conteggio delle parole, possiamo contare questi spazi invece delle parole e aggiungere 1 al totale (poiché il numero di spazi sarebbe uno in meno del numero di parole).

Ora ci possono essere due possibilità:

  1. C'è un singolo spazio tra ogni parola
  2. Ci sono più spazi tra le parole.

Quindi vediamo come contare il numero totale di parole in ogni caso.

Esempio 1 - Quando c'è un singolo spazio tra le parole

Diciamo che ho il seguente testo nella cella A1: Fai uscire il gatto dalla borsa

Per contare il numero di parole, ecco la formula che userei:

=LUN(A1)-LEN(SOSTITUTO(A1," ",""))+1

Ciò restituirebbe "7" come risultato.

Ecco come funziona questa formula:

  • LUNGHEZZA(A1) - Questa parte della formula restituisce 26, che è il numero totale di caratteri nel testo nella cella A1. Include i caratteri di testo e gli spazi.
  • SOSTITUTO(A1,” “,””) - Questa parte della formula rimuove tutti gli spazi dal testo. Quindi il risultato, in questo caso, sarebbe Lascia il gatto fuori dalla borsa.
  • LEN(SOSTITUTO(A1,” “,“”) - Questa parte della formula conta il numero totale di caratteri nel testo che non ha spazi. Quindi il risultato di questo sarebbe 20.
  • LEN(A1)-LEN(SOSTITUTO(A1,” “,“”)) - Ciò sottrae la lunghezza del testo senza spazi dalla lunghezza del testo con spazi. Nell'esempio sopra, sarebbe 26-20 che è 6.
  • =LUN(A1)-LEN(SOSTITUTO(A1,” “,“”))+1 - Aggiungiamo 1 al risultato complessivo poiché il numero totale di spazi è uno in meno del numero totale di parole. Ad esempio, c'è uno spazio in due parole e due spazi in tre parole.

Ora, questo funziona bene se hai solo un carattere spazio tra le parole. Ma non funzionerebbe se hai più di uno spazio tra le parole.

In tal caso, utilizzare la formula nel prossimo esempio.

Esempio 2: quando ci sono più spazi tra le parole

Supponiamo che tu abbia il seguente testo: Fai uscire il gatto dalla borsa

In questo caso, ci sono più caratteri di spazio tra le parole.

Per ottenere il conteggio delle parole, dobbiamo prima rimuovere tutti gli spazi extra (in modo che ci sia un solo carattere di spazio tra due parole) e poi contare il numero totale di spazi.

Ecco la formula che ci darà il giusto numero di parole:

=LUNGHEZZA(TRIM(A1))-LEN(SOSTITUTO(A1," ",""))+1

Questa è una formula simile usata nell'esempio sopra, con una leggera modifica: qui abbiamo usato anche la funzione TRIM.

La funzione TRIM di Excel rimuove tutti gli spazi iniziali, finali ed extra (eccetto i singoli spazi tra le parole).

Il resto della formula funziona allo stesso modo (come spiegato nell'esempio 1).

Nota: se non ci sono spazi tra le parole, viene considerata come una sola parola.

Utilizzo della funzione personalizzata VBA per contare le parole in Excel

Sebbene le formule di cui sopra funzionino alla grande, se hai bisogno di calcolare spesso il conteggio delle parole, puoi utilizzare VBA per creare una funzione personalizzata (chiamata anche funzione definita dall'utente).

Il vantaggio dell'utilizzo di una funzione personalizzata è che è possibile crearla una volta e quindi utilizzarla come qualsiasi altra normale funzione di Excel. Quindi, invece di creare una formula lunga e complessa come abbiamo fatto nei due esempi sopra, hai una formula semplice che prende il riferimento di cella e ti dà immediatamente il conteggio delle parole.

Ecco il codice che creerà questa funzione personalizzata per ottenere il conteggio delle parole in Excel.

Funzione WordCount(CellRef As Range) Dim TextStrng As String Dim Result() As String Result = Split(WorksheetFunction.Trim(CellRef.Text), " ") WordCount = UBound(Result()) + 1 End Function

Una volta creata, puoi utilizzare la funzione WordCount proprio come qualsiasi altra normale funzione di Excel.

Nel codice sopra per la funzione personalizzata, ho utilizzato la funzione TRIM del foglio di lavoro per rimuovere eventuali spazi iniziali, finali e doppi tra le parole. Ciò garantisce che tutte e tre le celle diano lo stesso risultato, poiché vengono contate solo le parole e non i doppi spazi.

Come funziona questa formula:

Il codice VBA sopra utilizza prima la funzione TRIM per rimuovere tutti gli spazi iniziali, finali e doppi dalla stringa di testo nella cella di riferimento.

Una volta che ha la stringa pulita, usa la funzione SPLIT in VBA per dividere la stringa di testo in base al delimitatore, che abbiamo specificato come spazio. Quindi ogni parola viene separata come archiviata come elemento separato nella variabile Risultato.

Usiamo quindi la funzione UBOUND per contare il numero totale di elementi che sono stati memorizzati nelle variabili dei risultati. Poiché VBA ha una base 0, dobbiamo aggiungere 1 per ottenere il numero totale di parole.

Ciò significa che Risultato (0) memorizza la prima parola, Risultato (1) memorizza la seconda parola e così via. Poiché questo conteggio inizia da 0, è necessario aggiungere 1 per ottenere il conteggio delle parole reali.

Dove mettere questo codice?

Quando si crea una funzione personalizzata, è necessario inserire il codice nell'editor VB della cartella di lavoro (che è il back-end della cartella di lavoro in cui è possibile scrivere codice per automatizzare le attività e creare funzioni personalizzate).

Di seguito sono riportati i passaggi per inserire il codice per la funzione "GetNumeric" nella cartella di lavoro.

  1. Vai alla scheda Sviluppatore.
  2. Fare clic sull'opzione Visual Basic. Questo aprirà l'editor VB nel backend.
  3. Nel riquadro Project Explorer nell'editor VB, fare clic con il pulsante destro del mouse su qualsiasi oggetto per la cartella di lavoro in cui si desidera inserire il codice. Se non vedi Esplora progetti, vai alla scheda Visualizza e fai clic su Esplora progetti.
  4. Vai su Inserisci e fai clic su Modulo. Questo inserirà un oggetto modulo per la tua cartella di lavoro.
  5. Copia e incolla il codice nella finestra del modulo.

Dopo aver copiato il codice nella finestra del codice, puoi tornare al tuo foglio di lavoro e utilizzare questa funzione come qualsiasi altra normale funzione di Excel.

Basta digitare =Parola e ti mostrerà la formula nell'elenco.

Prende un argomento, che è il riferimento della cella e ti dà istantaneamente il conteggio delle parole al suo interno.

wave wave wave wave wave