Come trovare la posizione dell’ennesimo spazio in una stringa in Excel?
Quando si lavora con dati testuali in Excel, è frequente incontrare celle contenenti più parole separate da spazi. Potresti, ad esempio, aver bisogno di individuare la posizione del primo o dell’ennesimo spazio in ciascuna cella per elaborare ulteriormente o estrarre informazioni dalle tue stringhe. Trovare in modo efficiente la posizione di uno specifico spazio è utile per suddividere nomi, analizzare codici o riorganizzare i dati. Questa guida ti illustra tecniche pratiche per localizzare rapidamente la posizione del primo, del secondo o dell’ennesimo spazio nel contenuto delle celle, come mostrato nell’immagine seguente. Scoprirai anche come rimuovere gli spazi indesiderati ed esplorerai soluzioni alternative per un’individuazione flessibile e avanzata degli spazi.
Trova la posizione dell’ennesimo spazio con una formula
Individua l’ennesimo spazio con una formula Excel più flessibile
Trova la posizione dell’ennesimo spazio con una macro VBA
Rimuovi spazi iniziali/finali/extra/tutti da una stringa![]()
Trova la posizione dell’ennesimo spazio con una formula
Per individuare la posizione di uno specifico spazio all’interno di una stringa di testo, puoi sfruttare le funzioni integrate di Excel. Ogni metodo illustrato di seguito ti permette di trovare il 1°, 2°, 3° o 4° spazio annidando la funzione TROVA — un approccio ideale quando il numero di spazi è limitato e noto in anticipo.
| Trova la posizione del primo spazio | =FIND(« »,A1) |
| Trova la posizione del secondo spazio | =FIND(« »,A1,FIND(« »,A1)+1) |
| Trova la posizione del terzo spazio | =FIND(« »,A1,FIND(« »,A1,FIND(« »,A1)+1)+1) |
| Trova la posizione del quarto spazio | =FIND(« »,A1,FIND(« »,A1,FIND(« »,A1, FIND(« »,A1)+1)+1)+1) |
Ad esempio, se desideri trovare la posizione del secondo spazio in ciascuna cella del tuo elenco, procedi così:
Seleziona una cella vuota, ad esempio C2, e inserisci la seguente formula:
=FIND(" ",A2,FIND(" ",A2)+1) Dopo aver inserito la formula, premi Invio. Per applicarla ad altre celle, trascina il quadratino di riempimento lungo il tuo elenco: la posizione verrà calcolata automaticamente per ogni stringa. Vedi immagine:
Nota: se una cella contiene meno spazi di quelli specificati, la formula restituirà un errore #VALORE!. Ti consigliamo di verificare i tuoi dati o di utilizzare funzioni di gestione degli errori come SE.ERRORE per una maggiore robustezza.
Questo metodo è chiaro e rapido per gestire fino a un numero ridotto e fisso di spazi. Per stringhe che richiedono di individuare posizioni di spazi più elevate o valori dinamici di n, prova la soluzione con formula più flessibile descritta di seguito.
Individua l’ennesimo spazio con una formula Excel più flessibile
Se devi individuare la posizione dell’ennesimo spazio in una stringa di testo ma preferisci evitare di annidare manualmente più funzioni TROVA, puoi combinare SOSTITUISCI e TROVA. Questo metodo ti consente di regolare dinamicamente la posizione dello spazio desiderata semplicemente modificando un riferimento di cella o una variabile, risultando particolarmente efficace con stringhe lunghe o flussi di lavoro Excel modulari.
Ad esempio, supponi che il testo completo si trovi nella cella A2 e che la posizione dello spazio da trovare (ad esempio, il 3° spazio) sia indicata nella cella B2 (inserisci il valore desiderato di n, ad esempio 3, in B2):
=FIND("#",SUBSTITUTE(A2," ","#",B2)) Inserisci questa formula nella cella C2, quindi copiala verso il basso per analizzare le altre righe del tuo set di dati. La formula sostituisce l’ennesimo spazio con il carattere # e ne individua la posizione tramite la funzione TROVA. Questo metodo si rivela particolarmente efficace quando la posizione dello spazio varia da riga a riga o quando si lavora con stringhe di testo più complesse.
Suggerimenti:
- Questa formula supporta valori dinamici di n, consentendoti di fare riferimento a un valore diverso di n (B2) per ogni riga.
- Se il valore in B2 supera il numero di spazi nella stringa, il risultato sarà #VALORE!. Puoi racchiuderlo con
SE.ERROREper una visualizzazione più intuitiva, ad esempio:=IFERROR(FIND("#",SUBSTITUTE(A2," ","#",B2)),"Not Found"). - Se il tuo testo contiene effettivamente il carattere «#», prova a sostituirlo con un altro simbolo.
Questa tecnica è consigliata per gestire valori di numerose o elevate variabili e favorisce l’efficienza in strutture di dati più complesse.
Trova la posizione dell’ennesimo spazio con una macro VBA
Quando serve la massima flessibilità o si vuole automatizzare il processo su un ampio set di dati, una macro VBA è la scelta ideale. Grazie a una soluzione VBA, puoi analizzare ogni carattere di una stringa, contare gli spazi e ottenere la posizione esatta dell’occorrenza desiderata — perfetta anche per strutture testuali variabili, frasi lunghe o valori di *n* in continua evoluzione.
1. Fai clic su Strumenti sviluppatore > Visual Basic. Quando si apre la finestra di Microsoft Visual Basic, Applications Edition, fai clic su Inserisci > Modulo e incolla il seguente codice nel modulo:
Sub PositionOfNthSpace()
Dim txt As String
Dim spaceNum As Integer
Dim i As Integer
Dim cnt As Integer
Dim pos As Integer
On Error Resume Next
xTitleId = "KutoolsforExcel"
txt = Application.InputBox("Enter text to search:", xTitleId, "", Type:=2)
spaceNum = Application.InputBox("Find which space position (n):", xTitleId, 1, Type:=1)
pos = 0
cnt = 0
For i = 1 To Len(txt)
If Mid(txt, i, 1) = " " Then
cnt = cnt + 1
If cnt = spaceNum Then
pos = i
Exit For
End If
End If
Next i
If pos = 0 Then
MsgBox "The string does not contain " & spaceNum & " spaces.", vbExclamation, xTitleId
Else
MsgBox "The position of the " & spaceNum & "th space is: " & pos, vbInformation, xTitleId
End If
End Sub 2. Fai clic sul
pulsante di esecuzione per avviare la macro. Verranno visualizzate due finestre di dialogo: la prima ti chiederà di inserire la tua stringa di testo, la seconda di specificare quale spazio cercare (ad esempio, digita "3" per il terzo spazio). Se lo spazio richiesto viene trovato, la macro mostrerà la sua posizione; in caso contrario, apparirà una notifica.
Questo metodo VBA si rivela potente quando le formule standard non bastano o quando occorre elaborare in blocco le posizioni degli spazi in dati testuali eterogenei.
Rimuovi spazi iniziali/finali/extra/tutti da una stringa
Spesso è necessario eliminare spazi indesiderati nei dati testuali, come quelli iniziali, finali, doppi o persino tutti gli spazi. Excel non offre una funzione integrata per rimuoverli in modo massivo, ma puoi semplificare il processo in modo rapido e preciso con Kutools per Excel – un componente aggiuntivo ricco di funzionalità. Lo strumento Elimina spazi è particolarmente utile per ripulire set di dati importati o mal formattati prima di analizzarli o suddividerli in base alle posizioni degli spazi.
Dopo aver installato gratuitamenteKutools per Excel, procedi come segue:
1. Seleziona le stringhe da cui desideri eliminare gli spazi, quindi fai clic su Kutools > Testo > Elimina spazi. Vedi immagine:
2. Nella finestra di dialogo Elimina spazi, seleziona l’opzione desiderata in Tipo di spazio, ad esempio: Rimuovi spazi iniziali, Rimuovi spazi finali, Rimuovi spazi extra o Rimuovi tutti gli spazi. Puoi visualizzare in anteprima il risultato nella sezione Anteprima prima di confermare. Vedi immagine:
3. Fai clic su OK o su Applica. Gli spazi indesiderati verranno rimossi istantaneamente dalle stringhe selezionate.
In sintesi, che tu stia lavorando con elenchi brevi o grandi set di dati, puoi scegliere tra diverse soluzioni — formule integrate, approcci flessibili basati su formule, macro VBA o utility aggiuntive — in base alle tue esigenze. Quando il numero di spazi è noto e limitato, l’annidamento della funzione TROVA offre ottimi risultati; per valori di *n* più elevati o variabili, prova la combinazione SOSTITUISCI e TROVA oppure sfrutta VBA per un’automazione personalizzata. Assicurati sempre di ripulire preventivamente le stringhe dagli spazi indesiderati per ottenere risultati più affidabili.
Migliori Strumenti per la Produttività in Office
Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un’efficienza mai vista prima.Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e Risparmia tempo.Clicca qui per ottenere la funzionalità di cui hai più bisogno...
Office Tab Porta l'interfaccia a schede in Office e rende il tuo lavoro molto più semplice
- 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 all’interno della stessa finestra, invece che in finestre separate.
- Aumenta la tua produttività del 50 % e risparmia centinaia di clic del mouse ogni giorno!
Tutti i componenti aggiuntivi di Kutools in un unico programma di installazione.
Kutools for Office è la suite che include componenti aggiuntivi per Excel, Word, Outlook e PowerPoint, oltre a Office Tab Pro: la soluzione ideale per i team che lavorano su diverse app di Office.
- Suite completa— componenti aggiuntivi per Excel, Word, Outlook e PowerPoint + Office Tab Pro
- Un unico programma di installazione, una sola licenza— configurazione in pochi minuti (pronto per MSI)
- Funziona meglio insieme— produttività ottimizzata tra le app di Office
- Prova gratuita di 30 giorni con tutte le funzionalità— nessuna registrazione, nessuna carta di credito
- Miglior rapporto qualità-prezzo— risparmia rispetto all’acquisto dei singoli componenti aggiuntivi