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

Bagaimana cara mengurutkan angka dalam sel di Excel?

Mudah dan umum bagi kita untuk mengurutkan angka dalam daftar kolom, tetapi pernahkah Anda mencoba mengurutkan angka dalam satu sel? Mungkin tidak ada cara yang baik untuk Anda kecuali mengaturnya satu per satu, di sini, saya akan berbicara tentang cara mengurutkan angka dalam sel di Excel.

Urutkan angka dalam sel dengan rumus

Urutkan nomor dalam sel dengan User Defined Function

Urutkan angka yang dipisahkan dengan koma dalam sel dengan kode VBA


panah gelembung kanan biru Urutkan angka dalam sel dengan rumus

Untuk mengurutkan angka dalam sel di lembar kerja, Anda dapat menerapkan rumus panjang berikut, lakukan seperti ini:

1. Di sebelah data Anda, silakan masukkan rumus berikut, dalam contoh ini, saya akan mengetikkannya ke dalam sel C1, lihat tangkapan layar:

=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-numbers-in-cells-1

2. Lalu tekan Ctrl + Shift + Enter bersama-sama, lalu seret gagang isian ke kisaran yang ingin Anda terapkan rumus ini, dan Anda akan mendapatkan angka yang telah diurutkan dari kecil ke besar. Lihat tangkapan layar:

doc-sort-numbers-in-cells-1

Catatan:

1. Jika digit angka lebih dari 15 dalam sel, rumus ini tidak akan mendapatkan hasil yang benar.

2. Jika Anda ingin mengurutkan angka dalam urutan menurun, Anda dapat menggunakan rumus ini: =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. Dalam rumus di atas, A1 menunjukkan sel yang berisi angka-angka yang ingin Anda sortir, Anda dapat mengubahnya sesuai kebutuhan Anda.


panah gelembung kanan biru Urutkan nomor dalam sel dengan User Defined Function

Karena ada beberapa batasan rumus, Anda dapat menggunakan yang berikut ini Fungsi Buatan Pengguna untuk mengurutkan angka dalam sel yang lebih panjang dari 15 digit.

1. Tahan ALT + F11 kunci, dan itu membuka Jendela Microsoft Visual Basic for Applications.

2. Klik Menyisipkan > Modul, dan tempel kode berikut di Jendela Modul.

Kode VBA: Mengurutkan angka di dalam sel

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. Kemudian simpan dan tutup kode ini, kembali ke lembar kerja Anda, dan masukkan rumus ini = sortnumsincell (A1) ke dalam sel kosong di samping data Anda, lihat tangkapan layar:

doc-sort-numbers-in-cells-1

4. Dan kemudian seret pegangan isian ke sel yang ingin Anda isi rumus ini, dan semua angka di sel telah diurutkan dalam urutan menaik seperti gambar berikut yang ditampilkan:

doc-sort-numbers-in-cells-1

Note: Jika Anda ingin mengurutkan angka dalam urutan turun, masukkan rumus ini = sortnumsincell (A1,1).


panah gelembung kanan biru Urutkan angka yang dipisahkan dengan koma dalam sel dengan kode VBA

Jika nomor Anda dipisahkan oleh karakter tertentu seperti koma, titik koma, titik dan sebagainya seperti screenshot berikut, bagaimana Anda bisa mengurutkan mereka dalam sel? Sekarang, saya memperkenalkan kode VBA agar Anda dapat mengurutkannya.

doc-sort-numbers-in-cells-1

1. Tahan ALT + F11 kunci untuk membuka Jendela Microsoft Visual Basic for Applications.

2. Klik Menyisipkan > Modul, dan tempel kode berikut di Jendela Modul.

Kode VBA: Nomor urut dipisahkan dengan koma di dalam sel

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. Lalu tekan F5 kunci untuk menjalankan kode ini, dan kemudian pilih sel Anda yang berisi angka di kotak prompt yang muncul, lihat tangkapan layar:

doc-sort-numbers-in-cells-1

4. Dan kemudian klik OK, semua angka di dalam sel telah diurutkan secara menaik dalam kisaran aslinya.

Note: Anda dapat mengubah koma “,” menjadi karakter lain yang Anda perlukan dalam kode di atas. Dan kode ini hanya dapat mengurutkan data secara ascendingly.


Artikel terkait:

Bagaimana cara mengurutkan angka dengan tanda hubung di Excel?

Cara mengurutkan data dengan nilai yang paling sering di Excel?

Bagaimana cara mengurutkan alamat email berdasarkan domain di Excel?

Bagaimana cara mengurutkan baris untuk meletakkan sel kosong di atas di Excel?


Alat Produktivitas Kantor Terbaik

Kutools for Excel Memecahkan Sebagian Besar Masalah Anda, dan Meningkatkan Produktivitas Anda hingga 80%

  • Reuse: Masukkan dengan cepat rumus, bagan yang kompleks dan apa pun yang pernah Anda gunakan sebelumnya; Enkripsi Sel dengan kata sandi; Buat Milis dan mengirim email ...
  • Bilah Formula Super (dengan mudah mengedit beberapa baris teks dan rumus); Membaca Tata Letak (membaca dan mengedit sel dalam jumlah besar dengan mudah); Tempel ke Rentang yang Difilter...
  • Gabungkan Sel / Baris / Kolom tanpa kehilangan Data; Pisahkan Konten Sel; Gabungkan Baris / Kolom Duplikat... Mencegah Sel Duplikat; Bandingkan Rentang...
  • Pilih Duplikat atau Unik Baris; Pilih Baris Kosong (semua sel kosong); Temukan Super dan Temukan Fuzzy di Banyak Buku Kerja; Pilih Acak ...
  • Salinan Tepat Beberapa Sel tanpa mengubah referensi rumus; Buat Referensi Otomatis ke Beberapa Lembar; Sisipkan Poin, Kotak Centang, dan lainnya ...
  • Ekstrak Teks, Tambahkan Teks, Hapus berdasarkan Posisi, Hapus Space; Membuat dan Mencetak Subtotal Paging; Konversi Konten Antar Sel dan Komentar...
  • Filter Super (simpan dan terapkan skema filter ke sheet lain); Penyortiran Lanjutan menurut bulan / minggu / hari, frekuensi dan lainnya; Filter Khusus dengan huruf tebal, miring ...
  • Gabungkan Workbooks dan WorkSheets; Gabungkan Tabel berdasarkan kolom kunci; Pisahkan Data menjadi Beberapa Lembar; Konversi Batch xls, xlsx dan PDF...
  • Lebih dari 300 fitur canggih. Mendukung Office / Excel 2007-2021 dan 365. Mendukung semua bahasa. Penerapan yang mudah di perusahaan atau organisasi Anda. Fitur lengkap Uji coba gratis 30 hari. Jaminan uang kembali 60 hari.
tab kte 201905

Tab Office Membawa antarmuka Tab ke Office, dan Membuat Pekerjaan Anda Jauh Lebih Mudah

  • Aktifkan pengeditan dan pembacaan tab di Word, Excel, PowerPoint, Publisher, Access, Visio, dan Project.
  • Buka dan buat banyak dokumen di tab baru di jendela yang sama, bukan di jendela baru.
  • Meningkatkan produktivitas Anda sebesar 50%, dan mengurangi ratusan klik mouse untuk Anda setiap hari!
officetab bawah
Urutkan komentar berdasarkan
komentar (13)
Belum ada peringkat. Jadilah yang pertama memberi peringkat!
Komentar ini diminimalkan oleh moderator di situs
pak, bisa tolong bantu urutkan dulu data duplikatnya apakah kecil atau besar Contoh 1211 ---> 1112 9495 ---> 9945 7379 ---> 7739 Terima kasih banyak atas bantuannya
Komentar ini diminimalkan oleh moderator di situs
Hai, saya bertanya-tanya bagaimana UDF ini, = sortnumsincell (A1,1), dapat dimodifikasi secara lebih umum, seperti =sortnumsincell(A1," "," ",,1) dimana argumen pertama, A1, adalah sel target, argumen kedua,"", adalah pembatas yang dapat mengambil karakter apa pun, atau spasi, atau tidak sama sekali, dengan argumen ketiga, "", pembatas yang berbeda atau sama, dan argumen keempat, 1 atau 0, menunjukkan pengurutan naik atau turun, dengan string hasil ditampilkan, diurutkan dengan benar, dalam satu sel, dengan default pembatas sama dengan string asli kecuali ditentukan dalam istilah ketiga. Saya ingin itu berfungsi baik pada string dan numerik, dan terkadang argumen kedua atau ketiga mungkin berupa umpan baris, seperti yang dimasukkan secara manual dengan alt-enter. Anda akan menjadi pahlawan saya bulan ini jika Anda bisa melakukan itu. Saya mencoba tetapi gagal total. Terima kasih.
Komentar ini diminimalkan oleh moderator di situs
Saya memiliki serangkaian sel dengan angka yang dipisahkan oleh spasi yang ingin saya urutkan. misalnya 8 4 5 1 6 3 yang ingin saya urutkan sebagai 1 3 4 5 6 8 Bantuan apa pun dihargai
Komentar ini diminimalkan oleh moderator di situs
Apakah ada cara untuk mengurutkan lebih banyak angka dalam waktu yang sama dari satu sel? Contoh, saya memiliki daftar 50000 nomor aset seperti A1234,A1235... dan saya perlu menarik 500 nomor tertentu dan saya perlu menarik 500 pada saat itu untuk membuat perubahan dan menyimpan.Terima kasih
Komentar ini diminimalkan oleh moderator di situs
perlu mengurutkan 84-12-74-26-98 pesanan apa pun 12-26-74-84-98 atau 98-84-74-26-12 terima kasih
Komentar ini diminimalkan oleh moderator di situs
Jika CInt(Arr(xMin)) > CInt(Arr(j)) dan berhasil
Komentar ini diminimalkan oleh moderator di situs
saya ingin mengurutkan jumlah total 14000 hingga 20000 dari berbagai baris Contoh:- 2000,1500 satu baris dan seperti itu semua jumlah baris harus diatur
Komentar ini diminimalkan oleh moderator di situs
Hai, kode VBA tampaknya salah output, contoh sebelum 13,50,47,7,39 dan setelah 13-39-47-50-7. Ada ide kenapa?
Komentar ini diminimalkan oleh moderator di situs
hOLA, MI MASALAH ES QUE TENGO EXEL 2019 EN ESPAÑOL COMO SERIA LA FORMULA?
Komentar ini diminimalkan oleh moderator di situs
Bagaimana cara mengurutkan teks AZ di dalam sel di Excel?
Komentar ini diminimalkan oleh moderator di situs
Hai, terima kasih atas kebaikan yang bagus untuk menyortir angka yang dipisahkan dengan koma di dalam sel dengan kode VBA
Hanya saya telah menghadapi satu masalah dengan kode.
Kode tidak dapat mendeteksi angka tiga digit. misalnya angka (65, 93, 53, 72, 64, 85, 103, 48, 77, 81, 54) setelah menerapkan kode, orde baru (103, 48, 53, 54, 64, 65, 72, 77, 81, 85, 93)
Apakah Anda punya solusi untuk masalah tersebut?
Komentar ini diminimalkan oleh moderator di situs
Halo, omer, Mungkin kode di bawah ini dapat membantu Anda, silakan coba:
CellSort Fungsi Publik (r Sebagai Rentang) Sebagai String
Dim bry() Selamanya, L Selamanya, U Selamanya
ch = r(1).Teks
ary = Bagi(ch, ",")
L = LBound(ary)
U = UBound(ary)
RedDim bry (L Ke U)
Untuk i = LBound(ary) Ke UBound(ary)
bry(i) = CLng(ary(i))
Selanjutnya saya
Panggil BubbleSort(bry)
Untuk i = LBound(bry) Ke UBound(bry)
ary(i) = CStr(bry(i))
Selanjutnya saya
Pengurutan Sel = Gabung(ary, ",")
End Function

Sub BubbleSort(arr)
Redupkan strTemp Sebagai Varian
Redupkan Aku Selamanya
Dim j Selamanya
Redup lngMin As Long
Redup lngMax Selama
lngMin = LBound(arr)
lngMax = UBound(arr)
Untuk i = lngMin Ke lngMax - 1
Untuk j = i + 1 Ke lngMax
Jika arr(i) > arr(j) Maka
strTemp = arr(i)
arr(i) = arr(j)
arr(j) = strTemp
End If
J berikutnya
Selanjutnya saya
End SubSetelah memasukkan kode di atas, silakan terapkan rumus ini: =Penyortiran Sel(A1).Dan Anda akan mendapatkan hasil yang Anda butuhkan.
Komentar ini diminimalkan oleh moderator di situs
Halo, se pueden ordenar letras en una sola celda por orden alfabético? Anda menggunakan excel untuk Mac. Gracias
Belum ada komentar yang diposting di sini
Tinggalkan komentar anda
Posting sebagai Tamu
×
Beri peringkat pos ini:
0   Karakter
Lokasi yang Disarankan

Ikuti kami

Hak Cipta © 2009 - www.extendoffice.com. | Seluruh hak cipta. Dipersembahkan oleh ExtendOffice. | Peta Situs
Microsoft dan logo Office adalah merek dagang atau merek dagang terdaftar dari Microsoft Corporation di Amerika Serikat dan / atau negara lain.
Dilindungi oleh Sectigo SSL