Як відсортувати числа в комірці в Excel?
Нам легко і звично сортувати числа в списку стовпців, але чи намагалися ви коли-небудь сортувати числа в одній комірці? Можливо, для вас немає хорошого способу, за винятком того, щоб упорядкувати їх по одному, тут я розповім про те, як сортувати числа в клітинках у Excel.
Сортування чисел у клітинках за формулою
Сортування чисел у клітинках за допомогою функції користувача
Відсортуйте числа, розділені комами в комірках із кодом VBA
Сортування чисел у клітинках за формулою
Щоб відсортувати числа в клітинках робочого аркуша, ви можете застосувати таку довгу формулу, будь ласка, зробіть так:
1. Поруч із вашими даними введіть таку формулу, у цьому прикладі я введу її в клітинку C1, див. Знімок екрана:
=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. Потім натисніть Ctrl + Shift + Enter клавіші разом, а потім перетягніть маркер заповнення до діапазону, до якого ви хочете застосувати цю формулу, і ви отримаєте цифри, відсортовані від малого до великого. Дивіться знімок екрана:
Примітки:
1. Якщо цифра числа більше 15 у комірці, ця формула не дасть правильного результату.
2. Якщо ви хочете відсортувати числа за спаданням, ви можете скористатися цією формулою: =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. У наведених вище формулах А1 позначає клітинку, яка містить цифри, які потрібно відсортувати, ви можете змінити її відповідно до своїх потреб.
Сортування чисел у клітинках за допомогою функції користувача
Оскільки формула має деякі обмеження, ви можете використовувати наступне Визначена користувачем функція для сортування чисел у комірках довжиною більше 15 цифр.
1. Утримуйте клавішу ALT + F11 і відкриває Вікно Microsoft Visual Basic для програм.
2. Клацання Insert > Модуліта вставте наступний код у Вікно модуля.
Код VBA: сортування чисел у клітинках
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. Потім збережіть і закрийте цей код, поверніться до робочого аркуша та введіть цю формулу = sortnumsincell (A1) у порожню комірку поруч із вашими даними, див. знімок екрана:
4. А потім перетягніть маркер заповнення до комірок, які ви хочете містити в цій формулі, і всі числа в клітинках відсортовані за зростанням, як показано на наступному знімку екрана:
примітки: Якщо ви хочете відсортувати номери за спаданням, введіть цю формулу = sortnumsincell (A1,1).
Відсортуйте числа, розділені комами в комірках із кодом VBA
Якщо ваші номери розділені певними символами, такими як кома, крапка з комою, крапка тощо, як показано на наступному знімку екрана, як ви можете сортувати їх у клітинках? Тепер я представляю код VBA, щоб ви могли їх сортувати.
1. Утримуйте клавішу ALT + F11 ключі, щоб відкрити Вікно Microsoft Visual Basic для програм.
2. Клацання Insert > Модуліта вставте наступний код у Вікно модуля.
Код VBA: Номери сортування розділяються комами всередині комірок
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. Потім натисніть F5 клавішу, щоб запустити цей код, а потім виділіть клітинки, які містять номери у вікні запиту, що з’явиться, див.
4. А потім клацніть OK, всі числа в клітинках відсортовані за зростанням у вихідному діапазоні.
примітки: Ви можете змінити кому «,» на будь-які інші символи, як вам потрібно у наведеному вище коді. І цей код може сортувати дані лише за зростанням.
Статті по темі:
Як сортувати числа з дефісами в Excel?
Як відсортувати дані за найпоширенішим значенням в Excel?
Як відсортувати електронну адресу за доменом у Excel?
Як відсортувати рядки, щоб покласти порожні клітинки зверху в Excel?
Найкращі інструменти продуктивності офісу
Покращуйте свої навички Excel за допомогою Kutools для Excel і відчуйте ефективність, як ніколи раніше. Kutools для Excel пропонує понад 300 додаткових функцій для підвищення продуктивності та економії часу. Натисніть тут, щоб отримати функцію, яка вам найбільше потрібна...
Вкладка Office Передає інтерфейс із вкладками в Office і значно полегшує вашу роботу
- Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
- Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
- Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!