오늘 기사에서는 Word에서 텍스트 열을 길이별로 정렬하는 2가지 스마트한 방법을 보여줍니다.
테이블에서 텍스트 또는 숫자 열을 정렬하는 방법에는 여러 가지가 있습니다. 그러나 텍스트 열을 길이별로 정렬하는 것에 대해 생각해 본 적이 있습니까? 이 경우 문서 레이아웃이 더 명확하고 읽기 쉽습니다.
그러나 Word에는 이 규칙에서 정렬할 수 있는 직접적인 방법이 없습니다. 따라서 문제를 해결하기 위한 해결 방법을 찾아야 합니다.
방법 1 : Word VBA 사용
예를 들어 아래와 같은 테이블이 있다고 합시다.
- 첫 번째와 포름ost, Word에서 "Alt+ F11"을 눌러 VBA 편집기를 트리거합니다.
- 왼쪽 열에서 "일반"을 클릭하여 새 모듈 만들기로 이동합니다.
- 그런 다음 "삽입" 탭을 클릭하고 드롭다운 메뉴에서 "모듈"을 선택합니다.
- 그런 다음 모듈을 두 번 클릭하여 열고 다음 매크로를 붙여넣습니다.
Sub SortByWordLength()
Dim objTable As Table
Dim objColumnCell As Cell
Dim objColumnCellRange As Range
Dim objNewColumnCellRange As Range
Dim nRowNumber As Integer
Dim nColumnNumber As Integer
Dim strWordLenth As String
Dim nSortOrder As Integer
Dim nCurrentTableIndex As Integer
Dim nTableColumnsInCurrentTable As Integer
nCurrentTableIndex = ActiveDocument.Range(0, Selection.Tables(1).Range.End).Tables.Count
nTableColumns = ActiveDocument.Tables(nCurrentTableIndex).Columns.Count
nColumnNumber = InputBox("Enter the column number you want to sort", "Column Number", "For example:2")
If nColumnNumber > 0 And nColumnNumber <= nTableColumns Then
nSortOrder = InputBox("Choose the sort order:" & vbNewLine & "If you want to sort by descending, click 1" & vbNewLine & "If you want to sort by ascending, click 0", "Sort Order", "For example:1")
If nSortOrder = 1 Or nSortOrder = 0 Then
' Add a new column to put the word length of the specified column.
Set objTable = ActiveDocument.Tables(nCurrentTableIndex)
objTable.Columns.Add BeforeColumn:=objTable.Columns(nColumnNumber)
nRowNumber = 1
For Each objColumnCell In objTable.Columns(nColumnNumber + 1).Cells
Set objColumnCellRange = objColumnCell.Range
objColumnCellRange.MoveEnd Unit:=wdCharacter, Count:=-1
Set objNewColumnCellRange = objTable.Cell(nRowNumber, nColumnNumber).Range
objNewColumnCellRange.MoveEnd Unit:=wdCharacter, Count:=-1
strWordLenth = Len(objColumnCellRange.Text)
objNewColumnCellRange.InsertAfter (strWordLenth)
nRowNumber = nRowNumber + 1
Next objColumnCell
objTable.Select
' Sort by the word length.
Selection.Sort ExcludeHeader:=True, FieldNumber:="Column " & nColumnNumber, SortFieldType:= _
wdSortFieldNumeric, SortOrder:=nSortOrder, FieldNumber2:="", _
SortFieldType2:=wdSortFieldAlphanumeric, SortOrder2:=wdSortOrderAscending _
, FieldNumber3:="", SortFieldType3:=wdSortFieldAlphanumeric, SortOrder3:= _
wdSortOrderAscending, Separator:=wdSortSeparateByCommas, SortColumn:= _
False, CaseSensitive:=False, LanguageID:=wdEnglishUS, SubFieldNumber:= _
"Paragraphs", SubFieldNumber2:="Paragraphs", SubFieldNumber3:="Paragraphs"
objTable.Columns(nColumnNumber).Delete
Else
MsgBox ("Invalid sort type, please try again")
End If
Else
MsgBox ("Invalid column number, please try again")
End If
End Sub
주의 사항:
테이블에 헤더 행이 없으면 다음 코드 행을 변경해야 합니다.
Selection.Sort ExcludeHeader:=True
"참"을 "거짓"으로 바꿉니다.
- 다음으로“실행”을 클릭하십시오.
- 그런 다음 열린 첫 번째 상자에 열 번호를 입력하십시오. tar열을 가져오십시오(예: 두 번째 열의 "2").
- "확인"을 클릭하십시오.
- 두 번째 상자에 정렬 규칙을 지정하는 숫자를 입력합니다. "0"은 오름차순 정렬을, "1"은 내림차순 정렬을 나타냅니다.
- 마찬가지로 "확인"을 클릭합니다.
효과 확인:
방법 2: Excel에서 정렬
- 먼저 Word에서 표를 선택하고 “Ctrl+ C”를 눌러 복사합니다.
- 그런 다음 Excel을 열고 "Ctrl + V"를 눌러 붙여넣습니다. 이제 표에 머리글 행이 없으면 A2 셀에 표를 붙여넣습니다.
- 그런 다음 열의 열 문자를 클릭하십시오. 예를 들어 C열이 tar열을 가져옵니다. 선택 항목에 총 열이 표시됩니다.
- 다음으로 마우스 오른쪽 버튼을 클릭하고 "삽입"을 선택합니다.
- 열 C 앞에 새 열이 있습니다. 새 열의 두 번째 셀에 커서를 놓습니다.
- 셀 B2에 "=LEN(C2)"를 입력합니다. "C"를 실제 것으로 교체하는 것을 잊지 마십시오.
- 그런 다음 십자 모양으로 바뀔 때까지 B2 셀의 오른쪽 아래 모서리에 커서를 놓습니다.
- 이제 두 번 클릭하십시오. 숫자로 채워진 새 열이 표시됩니다. C 열의 텍스트에 대한 문자 수입니다.
- B1 셀에 원하는 것을 입력하십시오. 그냥 비워두지 마세요.
- 숫자가 있는 열 B의 아무 셀에 커서를 놓습니다.
- "홈" 탭을 클릭하고 "정렬 및 필터"를 클릭합니다.
- 드롭다운 메뉴에서 "내림차순 정렬" 또는 "내림차순 정렬"을 선택합니다.
- 마지막으로 새로 삽입된 열을 선택하고 마우스 오른쪽 버튼을 클릭하여 "삭제"를 선택합니다. 그리고 표를 다시 Word 문서에 붙여넣습니다.
손상된 문서 복구
컴퓨터에 저장된 문서가 안전하다고 생각하십니까? 공격으로부터 컴퓨터를 보호할 수도 있습니다. 여전히 문서가 있을 가능성이 있습니다.ost. 따라서 파일이 완벽하게 안전하지 않을 수 있음을 명심하십시오. 결과적으로 docx 복구 사전에 도구를 사용하는 것이 좋습니다.
저자 소개 :
Vera Chen은 데이터 복구 전문가입니다. DataNumen, Inc.는 다음과 같은 데이터 복구 기술 분야의 세계적 리더입니다. 손상된 xls pdf 수리 소프트웨어 제품. 자세한 내용은 WWW.datanumen.COM







