KutoolsforOffice — Un'unica soluzione, cinque potenti strumenti.Ottenere di più con meno sforzo.

Come inserire spazi prima delle lettere maiuscole in Excel?

AutoreXiaoyang Data di modifica

Formattare correttamente i dati in Excel è fondamentale per garantire chiarezza e facilità di analisi, soprattutto quando si lavora con stringhe di testo importate o concatenate che risultano poco leggibili. Un caso frequente è rappresentato da testi in cui le parole sono unite senza spazi, come ad esempio «DataFormattingTool», rendendone difficoltosa la lettura o l’elaborazione. Inserire uno spazio prima di ogni lettera maiuscola permette di separare efficacemente le parole, rendendo i fogli di calcolo più intuitivi e professionali, sia per l’interpretazione dei dati sia per la condivisione. Questa guida ti mostra diversi metodi pratici per aggiungere rapidamente spazi prima di ogni lettera maiuscola in Excel, assicurando che i tuoi dati restino sempre organizzati e facilmente gestibili in qualsiasi scenario.


Inserire spazi prima di ogni lettera maiuscola con una formula (Excel 2019 e versioni successive)

L’utilizzo di formule di Excel rappresenta un metodo semplice e affidabile per inserire spazi prima delle lettere maiuscole. Questo approccio non richiede competenze di programmazione né strumenti esterni ed è ideale per chi desidera automatizzare il processo sfruttando le funzioni integrate di Excel. La soluzione qui proposta utilizza le moderne funzioni dinamiche per matrici e la manipolazione del testo disponibili in Excel 2019, Excel 2021 e Microsoft 365.

Scenario applicabile: Ideale per chi utilizza versioni aggiornate di Excel e cerca una soluzione rapida basata su formule, senza ricorrere a VBA o componenti aggiuntivi. Questo metodo si aggiorna automaticamente non appena le celle vengono modificate o vengono inseriti nuovi dati, ma potrebbe non essere compatibile con versioni precedenti di Excel.

Per implementarlo, segui questi passaggi:

1. Copia e incolla la seguente formula in una cella vuota (ad esempio, la cella B2 se il tuo testo originale si trova nella cella A2), quindi premi Invio per ottenere il primo risultato in Excel 365 o 2021. In Excel 2019, usa Ctrl+Maiusc+Invio per applicarla come formula matriciale:

=TRIM(LEFT(A2,1) & TEXTJOIN("", TRUE, IF(CODE(MID(A2, ROW(INDIRECT("2:" & LEN(A2))), 1))>=65, IF(CODE(MID(A2, ROW(INDIRECT("2:" & LEN(A2))), 1))<=90, " "&MID(A2, ROW(INDIRECT("2:" & LEN(A2))), 1), MID(A2, ROW(INDIRECT("2:" & LEN(A2))), 1)), MID(A2, ROW(INDIRECT("2:" & LEN(A2))), 1))))

2. Dopo aver ottenuto il primo risultato, trascina il quadratino di riempimento verso il basso per applicare la formula alle altre righe secondo necessità. L’output mostrerà il tuo Testo Originale con spazi inseriti prima di ogni lettera maiuscola.

inserisci spazi prima delle lettere maiuscole con una formula

Spiegazione di questa formula:
  • SINISTRA(A2;1): Restituisce il primo carattere della stringa invariato, evitando uno spazio superfluo all'inizio.
  • INDIRETTO("2:" & LUNGHEZZA(A2)): Genera una sequenza che fa riferimento a ogni carattere successivo in base alla sua posizione, dal secondo carattere fino all’ultimo.
  • STRINGA.ESTRAI(A2; RIF.RIGA(...);1): Estrae un carattere alla volta in base alla posizione.
  • CODICE(...): Valuta ciascun carattere estratto per verificarne il valore ASCII; i valori compresi tra 65 e 90 corrispondono alle lettere maiuscole dell'alfabeto inglese (A-Z).
  • TESTO.UNISCI(«»; VERO; ...): Concatena ogni carattere, inserendo uno spazio prima di quelli riconosciuti come lettere maiuscole, e ignora eventuali testi vuoti quando è specificato VERO.
  • ANNULLA.SPAZI(...): Rimuove gli spazi iniziali e finali che potrebbero essere stati aggiunti durante l'elaborazione.

Nota: Possono verificarsi errori se la cella originale è vuota o contiene valori non testuali. Assicurati che i tuoi dati siano formattati come testo per ottenere risultati ottimali. Durante il trascinamento della formula, controlla che i riferimenti di cella siano corretti e aggiornali se i tuoi dati partono da una riga o colonna diversa.


Inserire spazi prima di ogni lettera maiuscola con Kutools per Excel

«Kutools per Excel» offre un metodo estremamente efficiente per inserire uno spazio prima di ogni lettera maiuscola nell’intero intervallo Seleziona Dati. La sua funzione integrata «Aggiungi testo» semplifica l’operazione, fornendo un’alternativa pratica per chi desidera completare il compito in pochi clic, senza dover ricordare formule complesse o ricorrere al codice.

Scenario applicabile: Questa soluzione è perfetta per chi elabora frequentemente grandi quantità di dati, preferisce un'interfaccia grafica o non si sente a proprio agio con formule e codice. Offre operazioni rapide su larga scala e riduce il rischio di errori legati alle formule. L’unico requisito è che Kutools per Excel sia installato.

Kutools per Exceloffre oltre 300 funzionalità avanzate per semplificare attività complesse, aumentando creatività ed efficienza.Integrato con funzionalità basate sull’IA, Kutools automatizza le attività con precisione, rendendo la gestione dei dati semplice e immediata.Informazioni dettagliate su Kutools per Excel...         Prova gratuita...

1. Seleziona l’intervallo di celle in cui desideri aggiungere spazi prima delle lettere maiuscole, quindi vai al menu «Kutools» > «Testo» > «Aggiungi testo». Si aprirà la finestra delle opzioni pertinenti.
fai clic su Aggiungi testo di Kutools

2. Nella finestra di dialogo «Aggiungi testo», inserisci uno spazio nella casella «Testo». Attiva quindi l’opzione «Aggiungi solo a» e seleziona «Prima delle lettere maiuscole» dal menu a discesa.
specifica le opzioni nella finestra di dialogo

3. Fai clic su «OK» per applicare le modifiche. Ogni lettera maiuscola nella selezione avrà uno spazio inserito prima di essa, come mostrato di seguito:
Inserisci uno spazio prima di ogni lettera maiuscola con Kutools

Precauzioni:

  • Controlla attentamente la selezione, poiché questa operazione viene applicata direttamente ai tuoi dati. Ti consigliamo di creare sempre un backup prima di utilizzare funzionalità di modifica batch.
  • Questa funzione distingue tra maiuscole e minuscole e agisce esclusivamente sulle lettere maiuscole (A-Z).

Inserire spazi prima di ogni lettera maiuscola con una funzione definita dall'utente

Per chi cerca maggiore flessibilità o una soluzione riutilizzabile per un’elaborazione personalizzata, creare una funzione definita dall’utente (UDF) in VBA permette di applicare una logica precisa per inserire spazi prima delle lettere maiuscole. Questo approccio mantiene il foglio di calcolo dinamico, poiché la funzione si comporta esattamente come qualsiasi altra formula di Excel e si aggiorna automaticamente.

Vantaggi: Offre piena personalizzazione e può essere riutilizzata in diverse cartelle di lavoro semplicemente copiando il codice.
Svantaggi: Richiede una conoscenza di base dell’editor VBA. Le formule basate su UDF potrebbero non funzionare in tutti gli ambienti Excel, in particolare su Excel Online o in presenza di restrizioni relative alle macro.

1. Apri il foglio di lavoro che contiene le stringhe di testo da elaborare.

2. Premi ALT + F11 per aprire l'editor Microsoft Visual Basic, Applications Edition (VBA).

3. Nell'editor VBA, clicca su «Inserisci» > «Modulo», quindi copia e incolla il codice seguente nella nuova finestra del modulo.

Codice VBA: Inserire spazi prima delle lettere maiuscole

Function AddSpaces(pValue As String) As String
'Updateby Extendoffice
Dim xOut As String
xOut = VBA.Left(pValue, 1)
For i = 2 To VBA.Len(pValue)
   xAsc = VBA.Asc(VBA.Mid(pValue, i, 1))
   If xAsc >= 65 And xAsc <= 90 Then
      xOut = xOut & " " & VBA.Mid(pValue, i, 1)
   Else
      xOut = xOut & VBA.Mid(pValue, i, 1)
   End If
Next
AddSpaces = xOut
End Function

4. Salva il progetto e chiudi l'editor VBA. Torna al foglio di lavoro. In una cella vuota adiacente ai tuoi dati (ad esempio, B2 se i dati si trovano in A2), inserisci la seguente formula e premi Invio:

=addspaces(A2)

Trascina il quadratino di riempimento della cella verso il basso per applicare la formula UDF a tutto l’elenco: ogni stringa di testo mostrerà automaticamente gli spazi inseriti prima di ciascuna lettera maiuscola, esattamente come previsto.

Inserisci uno spazio prima di ogni lettera maiuscola con una funzione definita dall'utente

Suggerimenti e risoluzione problemi:

  • Per mantenere la funzione definita dall'utente disponibile anche dopo aver riaperto il file, salva la cartella di lavoro come file abilitato alle macro (*.xlsm o *.xlsb).
  • Le modifiche ai dati di testo aggiorneranno automaticamente l'output della funzione definita dall'utente.
  • Le funzioni definite dall'utente non sono supportate in Excel Online né in ambienti con restrizioni relative alle macro.

 


Inserire spazi prima di ogni lettera maiuscola con codice VBA

Se preferisci una soluzione in grado di elaborare contemporaneamente un ampio intervallo di dati e apportare modifiche permanenti direttamente al foglio di lavoro, l'utilizzo di una macro VBA rappresenta un'ottima opzione. Questo metodo è ideale per utenti avanzati o per attività di pulizia una tantum, poiché modifica direttamente le celle selezionate.

Vantaggi: Elabora in modo efficiente grandi set di dati, non richiede l'inserimento di formule nelle celle e offre un controllo ancora più preciso su quali celle elaborare.

Considerazioni: Poiché questo metodo modifica direttamente i tuoi dati, crea sempre un backup prima di eseguire la macro. Le macro potrebbero essere disabilitate per impostazione predefinita in alcune cartelle di lavoro per motivi di sicurezza: abilitalle se necessario per procedere.

1. Premi ALT + F11 per aprire la finestra «Microsoft Visual Basic, Applications Edition».

2. Fai clic su «Inserisci» > «Modulo» e copia il codice seguente nella finestra del modulo:

Codice VBA: Inserire spazi prima delle lettere maiuscole

Sub AddSpacesRange()
'Updateby Extendoffice
Dim Rng As Range
Dim WorkRng As Range
Dim xOut As String
Dim xValue As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
For Each Rng In WorkRng
    xValue = Rng.Value
    xOut = VBA.Left(xValue, 1)
    For i = 2 To VBA.Len(xValue)
       xAsc = VBA.Asc(VBA.Mid(xValue, i, 1))
       If xAsc >= 65 And xAsc <= 90 Then
          xOut = xOut & " " & VBA.Mid(xValue, i, 1)
       Else
          xOut = xOut & VBA.Mid(xValue, i, 1)
       End If
    Next
    Rng.Value = xOut
Next
Application.ScreenUpdating = True
End Sub

3. Premi il tasto «F5» o fai clic sul pulsante «Esegui» per avviare la macro. Si aprirà una finestra di dialogo che ti chiederà di selezionare l’intervallo da modificare.
codice VBA per selezionare l'intervallo di dati

4. Dopo aver selezionato l'intervallo e aver fatto clic su «OK», la macro inserirà immediatamente uno spazio prima di ogni lettera maiuscola nelle celle selezionate.
inserisci spazi prima delle lettere maiuscole con codice VBA

Note per la risoluzione dei problemi:

  • Se la macro sembra non fare nulla, assicurati di aver selezionato l’intervallo desiderato e di aver abilitato le macro nelle impostazioni di Excel.
  • Questa operazione non può essere annullata una volta eseguita. Utilizza un backup se non sei sicuro.
  • La macro è ottimizzata per le lettere maiuscole dell'alfabeto inglese (A-Z); con caratteri non standard o alfabeti localizzati, i risultati potrebbero variare.

Indipendentemente dal metodo scelto, inserire uno spazio prima di ogni lettera maiuscola in Excel migliorerà notevolmente la leggibilità delle stringhe. Ogni approccio si adatta a scenari specifici: le formule per i calcoli dinamici, Kutools per un’automazione intuitiva, le UDF per il riutilizzo e il codice VBA per operazioni massicce avanzate. Prima di applicare qualsiasi tecnica su larga scala, verifica attentamente i dati e conserva sempre un backup dei valori originali per evitare perdite accidentali durante l’elaborazione. In caso di errori, rivedi passo dopo passo la procedura e assicurati che la versione di Excel in uso supporti le funzioni o il codice utilizzati. Per ulteriori strategie e suggerimenti pratici su Excel,esplora la nostra ampia raccolta di tutorial.


Articolo correlato:

Come aggiungere automaticamente uno spazio dopo ogni virgola in Excel?


Migliori Strumenti per la Produttività in Office

🤖KUTOOLS AI Assistente: Rivoluziona Analisi dei dati in base a:Esecuzione Intelligente   |  Genera Codice|  Crea formule personalizzate  |  Analizza Dati e Genera Grafici|  Richiama Funzioni avanzate
Funzionalità Popolari:Trova, Evidenzia o Contrassegna Duplicati   |  Elimina righe vuote   |  Combinare Colonne o Celle senza Perdere Dati   |   Arrotondamento senza usare la formula...
Super RICERCA.VERT:VLookup con Criteri Multipli  |  VLookup con Valori Multipli  |   VLookup tra Fogli Multipli   |   Corrispondenza approssimativa....
Elenco a discesa avanzato:Crea Rapidamente un Elenco a Discesa   |  Elenco a Discesa Dipendente   |  Elenco a Discesa con Selezione Multipla....
Gestione Colonne:Aggiungi un Numero Specifico di Colonne|Sposta Colonne|Attiva/Disattiva lo Stato di Visibilità delle Colonne Nascoste|Confronta Intervalli e Colonne...
Funzionalità in Evidenza:Attenzione della griglia   |  Visualizzazione Design   |Barra delle formule avanzata   | Gestione Cartelle di Lavoro e Fogli   |  Biblioteca di risorse(Testo Automatico)|  Selettore di Date   |  Unisci fogli di lavoro  |  Crittografa/Decrittografa celle   | Invia Email da Lista   |  Super Filtri   |   Filtro speciale(Filtra celle con testo in grassetto/corsivo/barrato...) ...
Principali Set di Strumenti 15:12 Strumentiper il Testo(Aggiungi testo,Elimina Caratteri Specifici, ...)|   50+Tipidi Grafico(Diagramma di Gantt, ...)|   40+ Formule Pratiche(Calcola l'età in base alla data di nascita, ...)|   19 Strumentidi Inserimento(Inserisci Codice QR,Inserisci Immagine dal Percorso, ...)|   12 Strumentidi Conversione(Converti in parole,Conversione del tasso di cambio, ...)|   7 StrumentiUnisci e Dividi(Unione avanzata righe,Dividi celle, ...)|... e molto altro
Usa Kutools nella tua lingua preferita – supporta inglese, spagnolo, tedesco, francese, cinese e 40+ altre!

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.

ExcelWordOutlookTabsPowerPoint
  • 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