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

Come ordinare i numeri all'interno di una singola cella in Excel?

AutoreXiaoyang Data di modifica

Quando si lavora con Excel, ordinare i numeri su un intervallo di celle o all'interno di una colonna è un'operazione comune e semplice. Tuttavia, possono verificarsi situazioni in cui è necessario ordinare numeri contenuti tutti all'interno di un'unica cella, ad esempio se si ricevono dati importati, report consolidati o file esportati in cui più numeri sono memorizzati insieme senza essere separati in celle distinte. Ordinare manualmente i numeri in ciascuna cella può risultare inefficiente e soggetto a errori, specialmente quando si gestiscono grandi quantità di dati o celle contenenti molte cifre. Utilizzando tecniche specifiche, è possibile riordinare rapidamente i numeri all'interno di singole celle per soddisfare le esigenze di organizzazione o analisi dei dati.

In questo articolo scoprirai diversi metodi pratici per ordinare i numeri all’interno delle celle in Excel, tra cui approcci basati su formule, funzioni definite dall’utente e codice VBA. Ogni metodo offre vantaggi specifici ed è ideale per scenari diversi, permettendoti di scegliere la soluzione più adatta alle tue esigenze.

Ordina i numeri all'interno delle celle con una formula

Ordina i numeri all'interno delle celle con una funzione definita dall'utente

Ordina i numeri separati da virgole all'interno delle celle con codice VBA

Ordina i numeri all'interno delle celle utilizzando la funzione Riempimento automatico di Excel


Ordina i numeri all'interno delle celle con una formula

Per casi semplici in cui tutti i numeri in una cella sono costituiti da singole cifre e non sono presenti delimitatori, puoi utilizzare una formula matriciale per ordinare automaticamente le cifre all’interno della cella. Questo approccio è ideale per gestire codici, ID o qualsiasi situazione in cui le cifre di una cella devono essere riordinate in modo rapido ed efficace.

Segui attentamente questi passaggi:

1. Inserisci una nuova colonna accanto ai tuoi dati. Ad esempio, se i tuoi numeri si trovano nella cella A1, fai clic sulla cella B1 e inserisci la seguente formula:

=TEXT(SUM(SMALL(--MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),ROW(INDIRECT("1:"&LEN(A1))))*10^(LEN(A1)-ROW(INDIRECT("1:"&LEN(A1))))),REPT("0",LEN(A1)))

Ordina i numeri all'interno delle celle con una formula

2.Poiché si tratta di una formula matriciale, conferma l'inserimento premendo Ctrl + Maiusc + Invio. Nella barra delle formule compariranno delle parentesi graffe attorno alla formula, a indicare che viene elaborata come matrice.

Successivamente, trascina il quadratino di riempimento verso il basso per copiare la formula nelle altre celle in cui desideri applicare la funzione di ordinamento. I numeri in ciascune cella verranno automaticamente ordinati in ordine crescente. Guarda l’esempio qui sotto:

trascina il quadratino di riempimento sull'intervallo per applicare questa formula

Per un’esperienza più fluida, assicurati di fare riferimento alle celle corrette e che i tuoi dati originali contengano esclusivamente cifre: la presenza di testo misto o caratteri aggiuntivi potrebbe infatti causare problemi.

Note:

- Se una cella contiene più di 15 cifre, questa formula potrebbe non funzionare correttamente a causa del limite predefinito di Excel per la precisione numerica. Per stringhe più lunghe o configurazioni di cifre più complesse, valuta invece l’uso di soluzioni VBA o di una funzione definita dall’utente.

- Per ordinare i numeri in ordine decrescente, puoi sostituire PICCOLOcon GRANDEnella formula e utilizzare:

=TEXT(SUM(LARGE(--MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),ROW(INDIRECT("1:"&LEN(A1))))*10^(LEN(A1)-ROW(INDIRECT("1:"&LEN(A1))))),REPT("0",LEN(A1)))

Questa formula funziona allo stesso modo, ma ordina le cifre dal più grande al più piccolo.

- Nelle formule indicate, A1 fa riferimento alla cella contenente i numeri da ordinare. Se i tuoi dati si trovano in una cella diversa, aggiorna semplicemente il riferimento di conseguenza.

- Se compare un errore #VALORE!, assicurati che la cella contenga esclusivamente singole cifre, senza spazi o altri caratteri.

- Quando applichi questo metodo a un dataset ampio, assicurati che le opzioni di calcolo del sistema siano impostate su automatico, in modo che i risultati delle formule vengano aggiornati correttamente durante la copia o la modifica dei dati.

uno screenshot di kutools for excel ai

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.
Potenzia le tue capacità in Excel con strumenti basati sull’intelligenza artificiale.Scarica orae scopri un’efficienza mai provata prima!

Ordina i numeri all'interno delle celle con una funzione definita dall'utente

In determinate situazioni, ad esempio quando si gestiscono numeri con più di 15 cifre o si richiede maggiore flessibilità, una funzione definita dall’utente (UDF) rappresenta un’alternativa efficace. Le UDF consentono di automatizzare l’ordinamento all’interno delle celle, soprattutto quando le tue esigenze vanno oltre ciò che le formule standard di Excel possono gestire.

Questa soluzione è ideale per chi lavora spesso con colonne di dati importati o codici raggruppati in singole celle, dove la lunghezza del contenuto può essere notevole e i numeri potrebbero richiedere ordinamenti ripetuti.

Ecco come implementarla:

1. Tieni premuto ALT + F11 per aprire la finestra di Microsoft Visual Basic, Applications.

2. Nella finestra di VBA, fai clic su Inserisci > Modulo, quindi copia e incolla il codice seguente nella nuova finestra del modulo:

Codice VBA: Ordina i numeri all'interno delle celle

Function SortNumsInCell(pNum As String, Optional pOrder As Boolean) As String
'UpdatebyExtendoffice
Dim xOutput As String
For i = 0 To 9
  For j = 1 To UBound(VBA.Split(pNum, i))
    xOutput = IIf(pOrder, i & xOutput, xOutput & i)
  Next
Next
SortNumsInCell = xOutput
End Function

3. Dopo aver incollato il codice, salva e chiudi l'editor VBA. Torna al foglio di lavoro e, in una cella vuota accanto ai tuoi dati (ad esempio B1 o C1), inserisci:

=sortnumsincell(A1)

Ordina i numeri all'interno delle celle con una funzione definita dall'utente

4. Trascina il quadratino di riempimento per estendere la funzione alle altre celle necessarie. Tutti i numeri all'interno di ciascuna cella selezionata verranno ora ordinati in ordine crescente, come mostrato di seguito:

trascina e riempi la formula nelle altre celle

Nota:Se desideri ordinare i numeri in ordine decrescente, inserisci invece la seguente formula:

=sortnumsincell(A1,1)

L'argomento aggiuntivo ()1) indica alla funzione di eseguire un ordinamento in ordine decrescente.

Questa soluzione basata su UDF offre maggiore flessibilità e precisione con dataset più ampi o complessi, aiutando a evitare errori comuni legati ai limiti delle cifre nelle formule.

Se compaiono errori di compilazione, verifica attentamente che il codice del modulo sia stato incollato correttamente e che il nome della funzione corrisponda a quello utilizzato nella formula del foglio di lavoro.


Ordina i numeri separati da virgole all'interno delle celle con codice VBA

Quando i numeri in una cella sono separati da delimitatori specifici—come virgole, punti e virgola o persino punti—le soluzioni basate su formule integrate potrebbero non essere sufficienti. In questi casi, un codice VBA personalizzato permette di ordinare i numeri in modo rapido ed efficiente, a prescindere dal numero di celle da elaborare.

Gli scenari applicabili includono elenchi esportati da database, risposte raccolte da sondaggi o qualsiasi set di dati in cui i valori numerici sono memorizzati in un’unica cella e separati da un carattere coerente.

Segui questi passaggi per eseguire il codice VBA per l’ordinamento:

Ordina i numeri separati da virgole

1. Premi ALT + F11 per aprire la finestra di Microsoft Visual Basic, Applications.

2. Fai clic su Inserisci > Modulo, quindi incolla il codice seguente nella finestra del modulo:

Codice VBA: Ordina i numeri separati da virgole all'interno delle celle

Sub SortNumsInRange()
'Update20140717Dim Rng As RangeDim WorkRng As RangeDim Arr As VariantOn Error Resume NextxTitleId = "KutoolsforExcel"
Set WorkRng = Application.SelectionSet WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Set objArrayList = CreateObject("System.Collections.ArrayList")
For Each Rng In WorkRng Arr = VBA.Split(Rng.Value, ",")
 For i =0 To UBound(Arr)
 xMin = i For j = i +1 To UBound(Arr)
 If Arr(xMin) > Arr(j) Then xMin = j End If Next j If xMin <> i Then temp = Arr(i)
 Arr(i) = Arr(xMin)
 Arr(xMin) = temp End If Next i Rng.Value = VBA.Join(Arr, ",")
NextEnd Sub

3. Per eseguire il codice, premi F5. Apparirà una finestra di dialogo che ti permetterà di selezionare l’intervallo contenente le celle da ordinare.

codice VBA per selezionare le celle

4. Dopo aver confermato con OK, il codice ordinerà in ordine crescente i numeri presenti in tutte le celle selezionate, applicando le modifiche direttamente senza influire su altri contenuti delle celle.

Nota: Se i tuoi numeri sono separati da un altro carattere (ad esempio un punto e virgola o uno spazio), sostituisci semplicemente la virgola “,” in Split(Rng.Value, ",") e Join(Arr, ",") con il delimitatore desiderato, in entrambe le posizioni del codice.

Questo codice esegue l'ordinamento solo in ordine crescente. Per ottenere un ordinamento decrescente, potresti dover modificare la logica di ordinamento nel codice VBA. Quando utilizzi VBA, ricorda sempre di salvare la cartella di lavoro prima di eseguire il codice, poiché le modifiche vengono applicate immediatamente e non possono essere annullate con il comando Annulla.

Se una cella contiene dati non numerici, il codice potrebbe non restituire il risultato desiderato; assicurati di verificare la presenza di contenuti misti nei tuoi dati prima di eseguirlo.


Ordina i numeri all'interno delle celle utilizzando la funzione Riempimento automatico di Excel

Per dataset di piccole dimensioni o quando i numeri in una cella seguono uno schema prevedibile, la funzione Riempimento automatico di Excel rappresenta una soluzione rapida e intuitiva. Questo approccio si rivela particolarmente efficace quando devi ordinare numeri solo in poche celle e la struttura è semplice.

Ecco come utilizzare il Riempimento automatico per ordinare i numeri all’interno delle celle:

1. In una nuova colonna adiacente ai tuoi dati, digita manualmente la versione ordinata dei numeri presenti nella prima cella (ad esempio, se A1 contiene)8371, digita 1378 nella cella B1).

2. Seleziona la cella successiva nella stessa colonna e inizia a digitare la versione ordinata del dato successivo. Dopo aver inserito un paio di esempi, premi Ctrl + E (scorciatoia di Riempimento automatico): Excel riconoscerà automaticamente il modello e compilerà le celle rimanenti in base al tuo esempio di ordinamento.

Questa tecnica è rapida, ma si adatta meglio a elenchi brevi o a modelli di dati molto regolari. Richiede che tu inserisca almeno un paio di risultati ordinati, in modo che Excel possa riconoscere la trasformazione desiderata.

Il Riempimento automatico non è sempre affidabile con modelli complessi o quando i numeri sono separati da caratteri speciali. Verifica sempre l’accuratezza dei risultati generati automaticamente.

Nota: questo metodo potrebbe non funzionare in ogni situazione.


Nella scelta di un approccio, tieni conto della struttura dei tuoi dati (cifre singole rispetto a numeri con separatori), della lunghezza della stringa e del numero di celle da elaborare. I metodi basati su formule sono ideali per stringhe brevi e prive di delimitatori, mentre le soluzioni VBA o UDF offrono maggiore flessibilità e potenza per gestire dati complessi o di grandi dimensioni.

Verifica attentamente i tuoi dati originali per eventuali spazi nascosti, testo residuo o problemi di formattazione prima di applicare qualsiasi soluzione. Dopo aver ordinato i numeri, è buona norma controllare l’output confrontando alcuni campioni con l’input originale.

Se riscontri problemi, assicurati che la tua versione di Excel supporti le formule matriciali (Excel 2016 o versioni successive offrono una compatibilità migliorata) e che le macro siano abilitate per l’utilizzo dei metodi VBA. Qualora l’ordinamento non dovesse funzionare come previsto, prova ad adattare la formula o il codice VBA alla struttura delle tue celle.

Articoli correlati:

Come ordinare in Excel i numeri che contengono trattini?

Come ordinare i dati in base al valore più frequente in Excel?

Come ordinare Indirizzo Email per dominio in Excel?

Come ordinare le righe in modo da portare le celle vuote in cima 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