Namig: drugi jeziki so prevedeni v Google. Lahko obiščete English različico te povezave.
Vpiši se
x
or
x
x
Registracija
x

or

Kako razvrstiti številke v celici v Excelu?

Za nas je preprosto in običajno, da razvrstimo številke na seznamu stolpcev, ali ste kdaj poskusili razvrstiti številke znotraj ene celice? Morda ni nobenega dobrega načina za vas, razen če jih uredite eno za drugim, tukaj bom govoril o tem, kako razvrstiti številke znotraj celic v Excelu.

Razvrsti številke znotraj celic s formulo

Razvrsti številke v celicah z uporabniško določeno funkcijo

Razvrsti številke, ki so ločene z vejicami v celicah s kodo VBA


puščica modra desno mehurček Razvrsti številke znotraj celic s formulo


Če želite razvrstiti številke znotraj celic v delovnem listu, lahko uporabite naslednjo dolgo formulo, storite tako:

1. Poleg vaših podatkov vnesite naslednjo formulo, v tem primeru ga bom vnesel v celico C1, si oglejte sliko zaslona:

=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-številke-v-celicah-1

2. Nato pritisnite Ctrl + Shift + Enter ključe skupaj, nato povlecite ročico za polnjenje na obseg, za katerega želite uporabiti to formulo, in dobili boste številke sortirane od majhnih do velikih. Prikaz slike:

doc-sort-številke-v-celicah-1

Opombe:

1. Če je številka celice v celici več kot 15, ta formula ne bo dobila pravilnega rezultata.

2. Če želite številke razvrstiti v padajočem vrstnem redu, lahko uporabite to formulo: =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. V zgornjih formulah A1 označuje celico, ki vsebuje številke, ki jih želite razvrstiti, lahko jih spremenite v svoje potrebe.


puščica modra desno mehurček Razvrsti številke v celicah z uporabniško določeno funkcijo

Ker obstajajo nekatere omejitve v formuli, lahko uporabite naslednje Uporabniško določeno funkcijo da razvrstite številke v celicah, daljših od števila 15.

1. Drži dol ALT + F11 tipke in odpre Okno Microsoft Visual Basic za aplikacije.

2. Kliknite Vstavi > Moduli, in prilepite naslednjo kodo v Okno modula.

VBA koda: Razvrsti številke v celicah

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. Nato shranite in zaprite to kodo, se vrnite na delovni list in vnesite to formulo = sortnumsincell (A1) v prazno celico poleg podatkov, si oglejte sliko zaslona:

doc-sort-številke-v-celicah-1

4. In nato povlecite polnilo za polnjenje v celice, ki jih želite vsebovati, in vse številke v celicah so razvrščene po naraščajočem vrstnem redu, kot je prikazano spodaj prikazano sliko:

doc-sort-številke-v-celicah-1

Opombe: Če želite številke razvrstiti v padajočem vrstnem redu, vnesite to formulo = sortnumsincell (A1,1).


puščica modra desno mehurček Razvrsti številke, ki so ločene z vejicami v celicah s kodo VBA

Če so vaše številke ločene z določenimi znaki, kot so vejica, podpičje, čas in tako naprej kot sledi posnetek zaslona, ​​kako jih lahko razvrstite v celice? Sedaj vam predstavim kodo VBA, da jih razvrstite.

doc-sort-številke-v-celicah-1

1. Drži dol ALT + F11 tipke za odpiranje Okno Microsoft Visual Basic za aplikacije.

2. Kliknite Vstavi > Moduli, in prilepite naslednjo kodo v Okno modula.

VBA koda: Razvrsti številke so ločene z vejicami znotraj celic

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. Nato pritisnite F5 ključ za zagon te kode in nato izberite svoje celice, ki vsebujejo številke v odzivnem polju, ki je izpuščeno, glejte sliko zaslona:

doc-sort-številke-v-celicah-1

4. In nato kliknite OK, so bile vse številke v celicah razvrščene naraščajoče v prvotnem obsegu.

Opombe: Spremenite lahko vejico "," na katere koli druge znake, kot jih potrebujete v zgoraj navedeni kodi. Ta koda lahko samo razvrsti podatke naraščajoče.


Sorodni članki:

Kako razvrstiti številke s vezaji v Excelu?

Kako razvrstiti podatke po najpogostejši vrednosti v Excelu?

Kako razvrstiti e-poštni naslov za domeno v Excelu?

Kako razvrstiti vrstice, da prazne celice na vrhu v Excelu?



Priporočena orodja za produktivnost za Excel

Kutools za Excel vam pomaga, da vedno končate delo pred časom in izstopite iz množice

  • Več kot zmogljive napredne funkcije 300, zasnovane za 1500 delovne scenarije, ki povečujejo produktivnost z 70%, vam dajejo več časa za skrb za družino in uživanje v življenju.
  • Ne potrebujete več pomnilniških formul in VBA kod, od zdaj naprej pa dajate svojim možganom počitek.
  • Postanite strokovnjak za Excel v minutah 3, zapletene in ponavljajoče se operacije lahko opravite v nekaj sekundah,
  • Vsak dan zmanjšajte število operacij tipkovnice in miške, zdaj se poslovite od poklicnih bolezni.
  • 110,000 visoko učinkovite ljudi in 300 + svetovno priznanih podjetij izbiro.
  • Brezplačna preizkusna različica 60 dneva. 60-dnevno jamstvo vračila denarja. 2 let brezplačne nadgradnje in podpore.

Prinaša kartično brskanje in urejanje za Microsoft Office, veliko močnejši od zavihkov brskalnika

  • Office Tab je namenjen za Word, Excel, PowerPoint in druge Office aplikacije: Založnik, Dostop, Visio in Projekt.
  • Odprite in ustvarite več dokumentov v novih zavihkih istega okna in ne v novih oknih.
  • Z 50% poveča vašo produktivnost in vsak dan zmanjša na stotine klikov z miško!
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Micael · 1 years ago
    Hi, the VBA code seems to output incorrectly, example before 13,50,47,7,39 and after 13-39-47-50-7. Any ideas why?
  • To post as a guest, your comment is unpublished.
    Jijoy P Jacob · 1 years ago
    i want to sort total an amount 14000 to 20000 from various row Example:- 2000,1500 one row and like that all row amount to arrange
  • To post as a guest, your comment is unpublished.
    orly · 1 years ago
    need to sort 84-12-74-26-98 any order 12-26-74-84-98 or 98-84-74-26-12
    thank you
  • To post as a guest, your comment is unpublished.
    Dave · 2 years ago
    Is there is any way to sort more numbers in same time from one cell? Example, i have a list of 50000 asset numbers such as A1234,A1235... and i need to pull 500 specific numbers and i need to pull 500 at the time to make change and save.Thank you
  • To post as a guest, your comment is unpublished.
    Brian Dolan · 2 years ago
    I have a series of cells with numbers separated by a space that I want to sort.
    eg 8 4 5 1 6 3 that I want to sort as 1 3 4 5 6 8
    Any help appreciated