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
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)))
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:
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.
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:
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:
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).
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.
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:
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 hatékonyságnövelő eszközök
Töltsd fel Excel-készségeidet a Kutools for Excel segítségével, és tapasztald meg a még soha nem látott hatékonyságot. A Kutools for Excel több mint 300 speciális funkciót kínál a termelékenység fokozásához és az időmegtakarításhoz. Kattintson ide, hogy megszerezze a leginkább szükséges funkciót...
Az Office lap füles felületet hoz 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!