Cum se sortează numerele într-o celulă din Excel?
Este ușor și obișnuit pentru noi să sortăm numerele într-o listă de coloane, dar ați încercat vreodată să sortați numerele într-o singură celulă? Poate că nu există o modalitate bună pentru dvs., cu excepția aranjării lor una câte una, aici, voi vorbi despre cum să sortați numerele în celule în Excel.
Sortați numerele în celule cu formula
Sortați numerele în celule cu funcția definită de utilizator
Sortează numerele care sunt separate prin virgule în celule cu cod VBA
Sortați numerele în celule cu formula
Pentru a sorta numerele în celule dintr-o foaie de lucru, puteți aplica următoarea formulă lungă, vă rugăm să procedați astfel:
1. Lângă datele dvs., introduceți următoarea formulă, în acest exemplu, o voi tasta în celula C1, a se vedea captura de ecran:
=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)))
2. Apoi apăsați Ctrl + Shift + Enter tastele împreună, apoi trageți mânerul de umplere peste intervalul pe care doriți să îl aplicați cu această formulă și veți obține numerele care au fost sortate de la mic la mare. Vedeți captura de ecran:
note:
1. Dacă cifra numărului este mai mare de 15 în celulă, această formulă nu va obține rezultatul corect.
2. Dacă doriți să sortați numerele în ordine descrescătoare, puteți utiliza această formulă: =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))).
3. În formulele de mai sus, A1 indică celula care conține numerele pe care doriți să le sortați, o puteți schimba în funcție de nevoile dvs.
Sortați numerele în celule cu funcția definită de utilizator
Deoarece există unele limitări ale formulei, puteți utiliza următoarele Funcție definită de utilizator pentru a sorta numerele în celule mai lungi de 15 cifre.
1. Țineți apăsat butonul ALT + F11 tastele și deschide fișierul Fereastra Microsoft Visual Basic pentru aplicații.
2. Clic Insera > Moduleși lipiți următorul cod în Fereastra modulului.
Cod VBA: Sortează numerele în celule
Function SortNumsInCell(pNum As String, Optional pOrder As Boolean) As String
'Update 20140717
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. Apoi salvați și închideți acest cod, reveniți la foaia de lucru și introduceți această formulă = sortnumsincell (A1) într-o celulă goală lângă datele dvs., consultați captura de ecran:
4. Și apoi trageți mânerul de umplere în celulele pe care doriți să le conțineți această formulă și toate numerele din celule au fost sortate în ordine crescătoare, după cum se arată în următoarea captură de ecran:
notițe: Dacă doriți să sortați numerele în ordine descrescătoare, vă rugăm să introduceți această formulă = sortnumsincell (A1,1).
Sortează numerele care sunt separate prin virgule în celule cu cod VBA
Dacă numerele dvs. sunt separate de anumite caractere, cum ar fi virgulă, punct și virgulă, punct și așa mai departe ca următoarea captură de ecran, cum le-ați putea sorta în celule? Acum, introduc un cod VBA pentru a le sorta.
1. Țineți apăsat butonul ALT + F11 tastele pentru a deschide Fereastra Microsoft Visual Basic pentru aplicații.
2. Clic Insera > Moduleși lipiți următorul cod în Fereastra modulului.
Cod VBA: numerele de sortare sunt separate prin virgule în celule
Sub SortNumsInRange()
'Update 20140717
Dim Rng As Range
Dim WorkRng As Range
Dim Arr As Variant
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set 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, ",")
Next
End Sub
3. Apoi apăsați F5 tasta pentru a rula acest cod, apoi selectați celulele care conțin numerele în caseta de prompt popped out, consultați captura de ecran:
4. Apoi faceți clic pe OK, toate numerele din celule au fost sortate ascendent în intervalul original.
notițe: Puteți schimba virgula „,” cu orice alte caractere, după cum aveți nevoie în codul de mai sus. Și acest cod poate sorta doar datele ascendent.
Legate de articole:
Cum se sortează numerele cu cratime în Excel?
Cum se sortează datele după cea mai frecventă valoare din Excel?
Cum se sortează adresa de e-mail după domeniu în Excel?
Cum se sortează rândurile pentru a pune celulele goale deasupra în Excel?
Cele mai bune instrumente de productivitate Office
Kutools pentru Excel vă rezolvă majoritatea problemelor și vă crește productivitatea cu 80%
- reutilizarea: Introduceți rapid formule complexe, diagrame și orice ai folosit anterior; Criptați celulele cu parola; Creați o listă de corespondență și trimiteți e-mailuri ...
- Super Formula Bar (editați cu ușurință mai multe linii de text și formulă); Layout de citire (citiți și editați cu ușurință un număr mare de celule); Lipiți la interval filtrat...
- Merge celule / rânduri / coloane fără a pierde date; Conținut de celule divizate; Combinați rânduri / coloane duplicate... Prevenirea celulelor duplicate; Comparați gamele...
- Selectați Duplicat sau Unic Rânduri; Selectați Rânduri goale (toate celulele sunt goale); Super Find și Fuzzy Find în multe cărți de lucru; Selectare aleatorie ...
- Copie exactă Mai multe celule fără modificarea referinței formulelor; Creați automat referințe la foi multiple; Introduceți gloanțe, Casete de selectare și multe altele ...
- Extrageți textul, Adăugați text, eliminați după poziție, Eliminați spațiul; Creați și imprimați subtotaluri de paginare; Convertiți conținutul dintre celule și comentarii...
- Super Filtru (salvați și aplicați scheme de filtrare altor foi); Sortare avansată după lună / săptămână / zi, frecvență și multe altele; Filtru special cu bold, italic ...
- Combinați cărți de lucru și foi de lucru; Merge Tables pe baza coloanelor cheie; Împărțiți datele în mai multe foi; Conversia în loturi xls, xlsx și PDF...
- Peste 300 de funcții puternice. Suportă Office / Excel 2007-2021 și 365. Acceptă toate limbile. Implementare ușoară în întreprinderea sau organizația dvs. Funcții complete Probă gratuită de 30 de zile. Garanție de returnare a banilor de 60 de zile.

Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară
- Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
- Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ferestrele noi.
- Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!













