Note: The other languages of the website are Google-translated. Back to English

Hogyan rendezhetem a számokat az Excel cellájában?

Könnyű és általános számok rendezése oszloplistában, de próbált-e már egyetlen cellán belül rendezni számokat? Lehet, hogy nincs jó módszer az Ön számára, kivéve, ha egyesével rendezi őket, itt fogok beszélni arról, hogyan rendezhetjük a számokat az cellákon belül az Excel-ben.

Rendezze a cellák számát képlettel

Számok rendezése a cellákban a Felhasználó által definiált funkcióval

Vesszővel elválasztott számok rendezése a VBA kóddal rendelkező cellákban


nyíl kék jobb buborék Rendezze a cellák számát képlettel

A munkalap celláin belüli számok rendezéséhez alkalmazhatja a következő hosszú képletet, kérjük, tegye a következőket:

1. Adatai mellett írja be a következő képletet, ebben a példában beírom a C1 cellába, lásd a képernyőképet:

=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)))

doc-sort-number-in-cell-1

2. Ezután nyomja meg a gombot Ctrl + Shift + Enter gombokat együtt, majd húzza át a kitöltő fogantyút arra a tartományra, amelyen alkalmazni szeretné ezt a képletet, és megkapja, hogy a számok kicsiből nagyba legyenek rendezve. Lásd a képernyőképet:

doc-sort-number-in-cell-1

Megjegyzések:

1. Ha a szám számjegye meghaladja a 15-öt a cellában, akkor ez a képlet nem a helyes eredményt adja.

2. Ha csökkenő sorrendben kívánja rendezni a számokat, használhatja a következő képletet: =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. A fenti képletekben az A1 jelöli azt a cellát, amely tartalmazza a rendezni kívánt számokat, és igény szerint módosíthatja.


nyíl kék jobb buborék Számok rendezése a cellákban a Felhasználó által definiált funkcióval

Mivel a képletnek vannak bizonyos korlátai, a következőket használhatja Felhasználó által definiált funkció számok rendezéséhez a 15 számjegynél hosszabb cellákban.

1. Tartsa lenyomva a ALT + F11 gombokat, és ez megnyitja a Microsoft Visual Basic for Applications ablak.

2. Kattints betétlap > Modulok, és illessze be a következő kódot a Modul ablak.

VBA kód: A cellákon belüli számok rendezése

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. Ezután mentse el és zárja be ezt a kódot, menjen vissza a munkalapra, és írja be ezt a képletet = sortnumsincell (A1) az adatok melletti üres cellába, lásd a képernyőképet:

doc-sort-number-in-cell-1

4. Ezután húzza a kitöltő fogantyút azokra a cellákra, amelyekben tartalmazni kívánja ezt a képletet, és a cellákban lévő összes szám növekvő sorrendbe van rendezve, az alábbi képernyőkép szerint:

doc-sort-number-in-cell-1

Megjegyzések: Ha csökkenő sorrendben kívánja rendezni a számokat, kérjük, írja be ezt a képletet = sortnumsincell (A1,1).


nyíl kék jobb buborék Vesszővel elválasztott számok rendezése a VBA kóddal rendelkező cellákban

Ha a számokat bizonyos karakterek választják el, például vessző, pontosvessző, pont és így tovább, a következő képernyőkép szerint, hogyan rendezhetné őket cellákba? Most bemutatok egy VBA kódot az Ön rendezéséhez.

doc-sort-number-in-cell-1

1. Tartsa lenyomva a ALT + F11 billentyűk megnyitásához Microsoft Visual Basic for Applications ablak.

2. Kattints betétlap > Modulok, és illessze be a következő kódot a Modul ablak.

VBA-kód: A rendezési számokat vesszők választják el a cellákon belül

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. Ezután nyomja meg a gombot F5 kulcs a kód futtatásához, majd válassza ki azokat a cellákat, amelyek tartalmazzák a számokat a felbukkanó gyorsmezőben, lásd a képernyőképet:

doc-sort-number-in-cell-1

4. Kattintson a gombra OK, a cellákban lévő összes szám növekvő sorrendbe került az eredeti tartományban.

Megjegyzések: A „,” vesszőt bármely más karakterre megváltoztathatja, amire szüksége van a fenti kódban. És ez a kód csak növekvő módon képes rendezni az adatokat.


Kapcsolódó cikkek:

Hogyan lehet rendezni a kötőjeles számokat az Excelben?

Az adatok rendezése az Excel leggyakoribb értéke szerint?

Hogyan rendezhető az e-mail cím tartomány szerint az Excelben?

Hogyan válogassunk sorokat az üres cellák tetejére helyezésére az Excelben?


A legjobb irodai termelékenységi eszközök

A Kutools for Excel megoldja a legtöbb problémát, és 80% -kal növeli a termelékenységet

  • újrafelhasználás: Gyorsan helyezze be összetett képletek, diagramok és bármi, amit korábban használt; Cellák titkosítása jelszóval; Levelezőlista létrehozása és e-maileket küldeni ...
  • Szuper Formula Bár (könnyedén szerkeszthet több szöveget és képletet); Olvasás elrendezés (könnyen olvasható és szerkeszthető nagyszámú cella); Beillesztés a Szűrt tartományba...
  • Cellák / sorok / oszlopok egyesítése az adatok elvesztése nélkül; Osztott cellák tartalma; Kombinálja a duplikált sorokat / oszlopokat... megakadályozza az ismétlődő cellákat; Hasonlítsa össze a tartományokat...
  • Válassza a Másolat vagy az Egyedi lehetőséget Sorok; Válassza az Üres sorok lehetőséget (az összes cella üres); Super Find és Fuzzy Find sok munkafüzetben; Véletlenszerű kiválasztás ...
  • Pontos másolás Több cella a képletreferencia megváltoztatása nélkül; Automatikus referenciák létrehozása több lapra; Helyezze be a golyókat, Jelölőnégyzetek és még sok más ...
  • Kivonat szöveg, Szöveg hozzáadása, Eltávolítás pozíció szerint, Hely eltávolítása; Hozz létre és nyomtasson személyhívó részösszegeket; Konvertálás a cellatartalom és a megjegyzések között...
  • Szuper szűrő (mentse el és alkalmazza a szűrősémákat más lapokra); Haladó rendezés hónap / hét / nap, gyakoriság és egyebek szerint; Speciális szűrő félkövér, dőlt betűvel ...
  • Kombinálja a munkafüzeteket és a munkalapokat; Táblázatok egyesítése kulcsoszlopok alapján; Az adatok felosztása több lapra; Kötegelt konvertálás xls, xlsx és PDF...
  • Több mint 300 hatékony funkció. Támogatja az Office / Excel 2007-2021 és 365 verziókat. Minden nyelvet támogat. Könnyű üzembe helyezés vállalatában vagy szervezetében. Teljes funkciók 30 napos ingyenes próbaverzió. 60 napos pénzvisszafizetési garancia.
kte lap 201905

Az Office fül a füles felületet hozza az Office-ba, és sokkal könnyebbé teszi a munkáját

  • Füles szerkesztés és olvasás engedélyezése Wordben, Excelben és PowerPointban, Publisher, Access, Visio és Project.
  • Több dokumentum megnyitása és létrehozása ugyanazon ablak új lapjain, mint új ablakokban.
  • 50% -kal növeli a termelékenységet, és naponta több száz kattintással csökkenti az egér kattintását!
officetab alja
A megjegyzések rendezése szerint
Hozzászólások (13)
Még nincs értékelés. Legyen Ön az első, aki értékel!
A weboldal moderátora ezt a megjegyzést minimalizálta
uram, segítene először a másolat adatainak rendezésében, függetlenül attól, hogy kicsi vagy nagy. Példa 1211 ---> 1112 9495 ---> 9945 7379 ---> 7739 Köszönöm szépen a segítséget
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia, arra lennék kíváncsi, hogy ez az UDF, = sortnumsincell (A1,1), általánosabban módosítható, mint =sortnumsincell(A1," "," ",,1) ahol az első érv, A1, a célcella, a második argumentum,"", egy határoló, amely bármilyen karaktert, szóközt vagy semmit elfoglalhat harmadik argumentummal, "", eltérő vagy azonos határolójel, és a negyedik argumentum, 1 vagy 0, amely növekvő vagy csökkenő rendezést jelöl, az eredmény karakterlánc megjelenítésével, helyesen rendezve, egy cellán belül, ha a határoló a harmadik kifejezésben nincs megadva, az alapértelmezett elválasztójel megegyezik az eredeti karakterlánccal. Szeretném, ha stringen és numerikusan is működne, és néha a második vagy harmadik argumentum egy soremelés lehet, ahogyan az alt-enter billentyűkombinációval manuálisan beírható. Te lennél a hónap hőse, ha megtehetnéd. Próbáltam, de csúnya kudarcot vallottam. Köszönöm.
A weboldal moderátora ezt a megjegyzést minimalizálta
Van egy sor cellám, amelyekben a számok szóközzel vannak elválasztva, és amelyeket rendezni szeretnék. pl. 8 4 5 1 6 3 amit szeretnék rendezni 1 3 4 5 6 8 Bármilyen segítséget szívesen veszek
A weboldal moderátora ezt a megjegyzést minimalizálta
Van valami mód több szám egyidejű rendezésére egy cellából? Például, van egy 50000 1234 eszközszámot tartalmazó listám, például A1235, A500... és 500 konkrét számot kell lehívnom, és egyszerre XNUMX-at kell lehívnom a módosításhoz és a mentéshez. Köszönjük
A weboldal moderátora ezt a megjegyzést minimalizálta
rendezni kell 84-12-74-26-98 bármilyen rendelést 12-26-74-84-98 vagy 98-84-74-26-12 köszönöm
A weboldal moderátora ezt a megjegyzést minimalizálta
Ha CInt(Arr(xMin)) > CInt(Arr(j)) és működik
A weboldal moderátora ezt a megjegyzést minimalizálta
14000 20000 és 2000,1500 XNUMX közötti összeget szeretnék rendezni a különböző sorokból Példa: - XNUMX egy sor, és így az összes sor összegét rendezni kell
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia, úgy tűnik, hogy a VBA kód hibásan jelenik meg, például 13,50,47,7,39 előtt és 13-39-47-50-7 után. Valami ötlet miért?
A weboldal moderátora ezt a megjegyzést minimalizálta
hOLA, MI PROBLÉMA ES QUE TENGO EXEL 2019 EN ESPAÑOL COMO SERIA LA FORMULA?
A weboldal moderátora ezt a megjegyzést minimalizálta
Hogyan rendezhetem az AZ szöveget egy cellán belül az Excelben?
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia, köszönöm szépen a VBA kóddal rendelkező cellák között vesszővel elválasztott számok rendezését
Csak egy problémám volt a kóddal.
A kód nem érzékel háromjegyű számot. például a számok (65, 93, 53, 72, 64, 85, 103, 48, 77, 81, 54) a kód alkalmazása után az új sorrend (103, 48, 53, 54, 64, 65, 72, 77, 81, 85, 93)
Van valami megoldás a problémára?
A weboldal moderátora ezt a megjegyzést minimalizálta
Helló, omer! Lehet, hogy az alábbi kód segíthet, próbálja meg:
Nyilvános függvény CellSort(r As Range) As String
Dim bry() As Long, L As Long, U As Long
ch = r(1).Szöveg
ary = Split(ch, ",")
L = LBound(ár)
U = UBound(ár)
ReDim bry (L–U)
For i = LBound(ary) to UBound(ary)
bry(i) = CLng(ár(i))
Következő i
Hívja a BubbleSort (bry)
For i = LBound(bry) - UBound(bry)
ary(i) = CStr(bry(i))
Következő i
CellSort = Join(ary, ",")
end Function

Sub BubbleSort (arr)
Dim strTemp As Variant
Dim i olyan hosszú
Dim j As Long
Dim LngMin As Long
Dim LngMax As Long
lngMin = LBound(arr)
lngMax = UBound(arr)
Ha i = lngMin - lngMax - 1
Ha j = i + 1 - lngMax
Ha arr(i) > arr(j) Akkor
strTemp = arr(i)
arr(i) = arr(j)
arr(j) = strTemp
Ha véget
Következő j
Következő i
End SubA fenti kód beillesztése után alkalmazza ezt a képletet: =Cellarendezés(A1).És megkapja a kívánt eredményt.
A weboldal moderátora ezt a megjegyzést minimalizálta
Hola, se pueden ordenar letras en una sola celda por orden alfabético? Használsz Excelt Mac-en. Gracias
Még senki sem írt megjegyzést
Hagyja meg észrevételeit
Feladás vendégként
×
Értékeld ezt a bejegyzést:
0   Karakterek
Javasolt helyek

Kövess minket

Copyright © 2009 - www.extendoffice.com. | Minden jog fenntartva. Powered by ExtendOffice. | Oldaltérkép
A Microsoft és az Office logó a Microsoft Corporation védjegyei vagy bejegyzett védjegyei az Egyesült Államokban és / vagy más országokban.
Sectigo SSL védi