Direkt zum Inhalt

Wie sortiere ich Zahlen innerhalb einer Zelle in Excel?

Es ist für uns einfach und üblich, Zahlen in einer Spaltenliste zu sortieren. Haben Sie jemals versucht, Zahlen in einer einzelnen Zelle zu sortieren? Vielleicht gibt es keinen guten Weg für Sie, außer sie einzeln anzuordnen. Hier werde ich darüber sprechen, wie Sie Zahlen in Zellen in Excel sortieren.

Zahlen innerhalb von Zellen mit Formel sortieren

Sortieren Sie Nummern in Zellen mit der benutzerdefinierten Funktion

Sortieren Sie Zahlen, die durch Kommas in Zellen mit VBA-Code getrennt sind


Pfeil blau rechte Blase Zahlen innerhalb von Zellen mit Formel sortieren

Um Zahlen innerhalb von Zellen in einem Arbeitsblatt zu sortieren, können Sie die folgende lange Formel anwenden. Gehen Sie dazu folgendermaßen vor:

1. Geben Sie neben Ihren Daten die folgende Formel ein. In diesem Beispiel gebe ich sie in Zelle C1 ein, siehe Screenshot:

=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-sortiernummern-in-zellen-1

2. Dann drücken Strg + Umschalt + Enter Ziehen Sie die Tasten zusammen und ziehen Sie den Füllpunkt in den Bereich, in dem Sie diese Formel anwenden möchten. Die Zahlen wurden von klein nach groß sortiert. Siehe Screenshot:

doc-sortiernummern-in-zellen-1

Anmerkungen:

1. Wenn die Ziffer der Zahl mehr als 15 in der Zelle beträgt, erhält diese Formel nicht das richtige Ergebnis.

2. Wenn Sie die Zahlen in absteigender Reihenfolge sortieren möchten, können Sie folgende Formel verwenden: =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. In den obigen Formeln gibt A1 die Zelle an, die die zu sortierenden Zahlen enthält. Sie können sie nach Bedarf ändern.


Pfeil blau rechte Blase Sortieren Sie Nummern in Zellen mit der benutzerdefinierten Funktion

Da die Formel einige Einschränkungen aufweist, können Sie Folgendes verwenden Benutzerdefinierte Funktion um Zahlen in Zellen zu sortieren, die länger als 15 Stellen sind.

1. Halten Sie die Taste gedrückt ALT + F11 Tasten, und es öffnet die Microsoft Visual Basic für Applikationen-Fenster.

2. Klicken Sie Insert > Modulund fügen Sie den folgenden Code in das Feld ein Modulfenster.

VBA-Code: Nummern innerhalb von Zellen sortieren

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. Speichern und schließen Sie diesen Code, kehren Sie zu Ihrem Arbeitsblatt zurück und geben Sie diese Formel ein = sortnumsincell (A1) in eine leere Zelle neben Ihren Daten, siehe Screenshot:

doc-sortiernummern-in-zellen-1

4. Ziehen Sie dann den Füllpunkt auf die Zellen, die diese Formel enthalten sollen, und alle Zahlen in den Zellen wurden in aufsteigender Reihenfolge sortiert, wie im folgenden Screenshot gezeigt:

doc-sortiernummern-in-zellen-1

Note: Wenn Sie die Zahlen in absteigender Reihenfolge sortieren möchten, geben Sie bitte diese Formel ein = sortnumsincell (A1,1).


Pfeil blau rechte Blase Sortieren Sie Zahlen, die durch Kommas in Zellen mit VBA-Code getrennt sind

Wenn Ihre Zahlen durch bestimmte Zeichen wie Komma, Semikolon, Punkt usw. wie im folgenden Screenshot getrennt sind, wie können Sie sie in Zellen sortieren? Jetzt führe ich einen VBA-Code ein, damit Sie sie sortieren können.

doc-sortiernummern-in-zellen-1

1. Halten Sie die Taste gedrückt ALT + F11 Schlüssel zum Öffnen der Microsoft Visual Basic für Applikationen-Fenster.

2. Klicken Sie Insert > Modulund fügen Sie den folgenden Code in das Feld ein Modulfenster.

VBA-Code: Sortiernummern werden in Zellen durch Kommas getrennt

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. Dann drücken F5 Geben Sie die Taste ein, um diesen Code auszuführen, und wählen Sie dann Ihre Zellen aus, die die Zahlen im ausgeblendeten Eingabeaufforderungsfeld enthalten (siehe Abbildung):

doc-sortiernummern-in-zellen-1

4. Und dann klick OKAlle Zahlen in den Zellen wurden im ursprünglichen Bereich aufsteigend sortiert.

Note: Sie können das Komma "," in beliebige andere Zeichen ändern, wie Sie im obigen Code benötigen. Und dieser Code kann Daten nur aufsteigend sortieren.


In Verbindung stehende Artikel:

Wie sortiere ich Zahlen mit Bindestrichen in Excel?

So sortieren Sie Daten nach dem häufigsten Wert in Excel?

Wie sortiere ich die E-Mail-Adresse nach Domain in Excel?

Wie sortiere ich Zeilen, um die leeren Zellen in Excel oben zu platzieren?

Beste Office-Produktivitätstools

🤖 Kutools KI-Assistent: Revolutionieren Sie die Datenanalyse basierend auf: Intelligente Ausführung   |  Code generieren  |  Erstellen Sie benutzerdefinierte Formeln  |  Analysieren Sie Daten und erstellen Sie Diagramme  |  Rufen Sie Kutools-Funktionen auf...
Beliebte Funktionen: Suchen, markieren oder identifizieren Sie Duplikate   |  Leere Zeilen löschen   |  Kombinieren Sie Spalten oder Zellen, ohne Daten zu verlieren   |   Runde ohne Formel ...
Super-Lookup: VLookup mit mehreren Kriterien    VLookup mit mehreren Werten  |   VLookup über mehrere Blätter hinweg   |   Unscharfe Suche ....
Erweiterte Dropdown-Liste: Erstellen Sie schnell eine Dropdown-Liste   |  Abhängige Dropdown-Liste   |  Mehrfachauswahl Dropdown-Liste ....
Spaltenmanager: Fügen Sie eine bestimmte Anzahl von Spalten hinzu  |  Spalten verschieben  |  Schalten Sie den Sichtbarkeitsstatus ausgeblendeter Spalten um  |  Vergleichen Sie Bereiche und Spalten ...
Ausgewählte Funktionen: Rasterfokus   |  Designansicht   |   Große Formelleiste    Arbeitsmappen- und Blattmanager   |  Ressourcen (Autotext)   |  Datumsauswahl   |  Arbeitsblätter kombinieren   |  Zellen verschlüsseln/entschlüsseln    Senden Sie E-Mails nach Liste   |  Superfilter   |   Spezialfilter (Filter fett/kursiv/durchgestrichen...) ...
Top 15 Toolsets12 Text Tools (Text hinzufügen, Zeichen entfernen, ...)   |   50+ Chart Typen (Gantt-Diagramm, ...)   |   40+ Praktisch Formeln (Berechnen Sie das Alter basierend auf dem Geburtstag, ...)   |   19 Einfügen Tools (QR-Code einfügen, Bild aus Pfad einfügen, ...)   |   12 Umwandlung (Conversion) Tools (Zahlen zu Wörtern, Currency Conversion, ...)   |   7 Zusammenführen & Teilen Tools (Erweiterte Zeilen kombinieren, Zellen teilen, ...)   |   ... und mehr

Verbessern Sie Ihre Excel-Kenntnisse mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über 300 erweiterte Funktionen, um die Produktivität zu steigern und Zeit zu sparen.  Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen ...

Beschreibung


Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich

  • Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
  • Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!
Comments (13)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hola, se pueden ordenar letras en una sola celda por orden alfabético? Yo uso excel para Mac. Gracias
This comment was minimized by the moderator on the site
Hi thanks for nice good for sorting numbers which separated by commas within cells with VBA code
Just I have faced one problem with the code.
The code cannot detect three digit number. for example the numbers (65, 93, 53, 72, 64, 85, 103, 48, 77, 81, 54) after applying the code, the new order (103, 48, 53, 54, 64, 65, 72, 77, 81, 85, 93)
Do you have any solution for the problem?
This comment was minimized by the moderator on the site
Hello, omer,May be the below code can help you, please try:
<div data-tag="code">Public Function CellSort(r As Range) As String
Dim bry() As Long, L As Long, U As Long
ch = r(1).Text
ary = Split(ch, ",")
L = LBound(ary)
U = UBound(ary)
ReDim bry(L To U)
For i = LBound(ary) To UBound(ary)
bry(i) = CLng(ary(i))
Next i
Call BubbleSort(bry)
For i = LBound(bry) To UBound(bry)
ary(i) = CStr(bry(i))
Next i
CellSort = Join(ary, ",")
End Function

Sub BubbleSort(arr)
Dim strTemp As Variant
Dim i As Long
Dim j As Long
Dim lngMin As Long
Dim lngMax As Long
lngMin = LBound(arr)
lngMax = UBound(arr)
For i = lngMin To lngMax - 1
For j = i + 1 To lngMax
If arr(i) > arr(j) Then
strTemp = arr(i)
arr(i) = arr(j)
arr(j) = strTemp
End If
Next j
Next i
End SubAfter inserting the above code, please apply this formula: =CellSort(A1).And you will get the result you need.
This comment was minimized by the moderator on the site
How to sort A-Z text within a cell in Excel?
This comment was minimized by the moderator on the site
hOLA, MI PROBLEMA ES QUE TENGO EXEL 2019 EN ESPAÑOL COMO SERIA LA FORMULA?
This comment was minimized by the moderator on the site
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?
This comment was minimized by the moderator on the site
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
This comment was minimized by the moderator on the site
need to sort 84-12-74-26-98 any order 12-26-74-84-98 or 98-84-74-26-12 thank you
This comment was minimized by the moderator on the site
If CInt(Arr(xMin)) > CInt(Arr(j)) and it works
This comment was minimized by the moderator on the site
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
This comment was minimized by the moderator on the site
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
This comment was minimized by the moderator on the site
Hi, I was wondering how this UDF, =sortnumsincell(A1,1), can be modified more generally, like =sortnumsincell(A1," "," ",,1) where the first argument, A1, is the target cell, the second argument," ", is a delimiter that could take any character, or a space, or nothing, with third argument, " ", a different or same delimiter, and the fourth argument, 1 or 0, indicating an ascending or descending sort, with the result string displaying, correctly sorted, within one cell, with delimiter default same as the original string unless specified in the third term. I would like it to work both on string and numerical, and sometimes the second or third argument might be a line feed, as would be manually entered with alt-enter. You'd be my hero of the month if you could do that. I tried but failed miserably. Thank you.
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations