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. 위의 수식에서 A1은 정렬하려는 숫자가 포함 된 셀을 나타내며 필요에 따라 변경할 수 있습니다.
사용자 정의 함수를 사용하여 셀 내에서 숫자 정렬
수식에는 몇 가지 제한이 있으므로 다음을 사용할 수 있습니다. 사용자 정의 기능 15 자리보다 긴 셀의 숫자를 정렬합니다.
1. 누르고 ALT + F11 키가 열립니다. Microsoft Visual Basic for Applications 창.
2. 딸깍 하는 소리 끼워 넣다 > 모듈을 클릭하고 다음 코드를 모듈 창.
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 for Applications 창.
2. 딸깍 하는 소리 끼워 넣다 > 모듈을 클릭하고 다음 코드를 모듈 창.
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는 대부분의 문제를 해결하고 생산성을 80% 증가시킵니다.
- 재사용: 빠르게 삽입 복잡한 공식, 차트 그리고 이전에 사용한 모든 것; 셀 암호화 암호로; 메일 링리스트 생성 이메일 보내기 ...
- 슈퍼 포뮬러 바 (여러 줄의 텍스트와 수식을 쉽게 편집 할 수 있습니다.) 레이아웃 읽기 (많은 수의 셀을 쉽게 읽고 편집합니다.) 필터링 된 범위에 붙여 넣기...
- 셀 / 행 / 열 병합 데이터 손실없이; 셀 내용 분할; 중복 행 / 열 결합... 중복 셀 방지; 범위 비교...
- 중복 또는 고유 선택 행; 빈 행 선택 (모든 셀이 비어 있음); 슈퍼 찾기 및 퍼지 찾기 많은 통합 문서에서; 무작위 선택 ...
- 정확한 사본 수식 참조를 변경하지 않고 여러 셀; 참조 자동 생성 여러 시트에; 글 머리 기호 삽입, 확인란 등 ...
- 텍스트 추출, 텍스트 추가, 위치 별 제거, 공간 제거; 페이징 부분합을 만들고 인쇄합니다. 셀 내용과 주석 간 변환...
- 슈퍼 필터 (다른 시트에 필터 구성표 저장 및 적용) 고급 정렬 월 / 주 / 일, 빈도 등 특수 필터 굵은 기울임 꼴로 ...
- 통합 문서와 워크 시트 결합; 키 열을 기반으로 테이블 병합; 데이터를 여러 시트로 분할; xls, xlsx 및 PDF 일괄 변환...
- 300개 이상의 강력한 기능. Office / Excel 2007-2021 및 365를 지원합니다. 모든 언어를 지원합니다. 기업 또는 조직에서 쉽게 배포할 수 있습니다. 전체 기능은 30일 무료 평가판입니다. 60일 환불 보장.

Office Tab은 Office에 탭 인터페이스를 제공하여 작업을 훨씬 쉽게 만듭니다.
- Word, Excel, PowerPoint에서 탭 편집 및 읽기 사용, Publisher, Access, Visio 및 Project.
- 새 창이 아닌 동일한 창의 새 탭에서 여러 문서를 열고 만듭니다.
- 생산성을 50% 높이고 매일 수백 번의 마우스 클릭을 줄입니다!













