Trong bài viết hôm nay, chúng tôi sẽ chỉ cho bạn 2 cách thông minh để sắp xếp một cột văn bản theo độ dài trong Word của bạn.
Có một số cách để sắp xếp một cột văn bản hoặc số trong bảng. Tuy nhiên, bạn đã bao giờ nghĩ đến việc sắp xếp một cột văn bản theo độ dài chưa? Trong trường hợp như vậy, bố cục tài liệu của bạn sẽ rõ ràng và dễ đọc hơn.
Tuy nhiên, không có cách trực tiếp nào trong Word để chúng ta sắp xếp theo quy tắc này. Do đó, chúng tôi phải tìm cách giải quyết để giải quyết vấn đề.
Cách 1: Sử dụng Word VBA
Ví dụ: giả sử chúng ta có một bảng như sau:
- Trước hết, trong Word, hãy nhấn tổ hợp phím “Alt + F11” để mở trình soạn thảo VBA.
- Đi để tạo một mô-đun mới bằng cách nhấp vào “Bình thường” ở cột bên trái.
- Sau đó nhấp vào tab “Chèn” và chọn “Mô-đun” trên menu thả xuống.
- Tiếp theo nhấp đúp chuột vào mô-đun để mở nó và dán macro dưới đây vào đó:
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
Lưu ý:
Nếu bảng của bạn không chứa hàng tiêu đề, thì bạn cần thay đổi dòng mã sau:
Selection.Sort ExcludeHeader:=True
Thay thế “Đúng” bằng “Sai”.
- Tiếp theo nhấp vào "Chạy".
- Sau đó, trong ô đầu tiên mở ra, nhập số thứ tự cột của cột cần nhắm đến, ví dụ như “2” cho cột thứ hai.
- Nhấp vào "OK".
- Trong hộp thứ hai, hãy nhập một số để chỉ định quy tắc sắp xếp. “0” đại diện cho sắp xếp theo thứ tự tăng dần, “1” theo thứ tự giảm dần.
- Tương tự, nhấp vào “OK”.
Kiểm tra hiệu ứng:
Cách 2: Sắp xếp trong Excel
- Đầu tiên, chọn bảng trong Word và nhấn “Ctrl + C” để sao chép nó.
- Tiếp theo mở Excel và dán nó bằng cách nhấn “Ctrl + V”. Bây giờ nếu bảng của bạn không có hàng tiêu đề, hãy dán bảng vào ô A2.
- Sau đó nhấp vào chữ cái của cột. Ví dụ, giả sử cột C là cột mục tiêu. Bạn sẽ thấy toàn bộ cột được chọn.
- Tiếp theo nhấp chuột phải và chọn “Chèn”.
- Sẽ có một cột mới trước cột C. Định vị con trỏ tại ô thứ hai của cột mới.
- Nhập “=LEN(C2)” vào ô B2. Nhớ thay chữ “C” bằng chữ thật.
- Tiếp theo đặt con trỏ ở góc dưới bên phải của ô B2 cho đến khi nó chuyển thành dấu thập.
- Bây giờ nhấp đúp chuột. Bạn sẽ thấy cột mới chứa đầy số. Đây là số ký tự cho các văn bản trong cột C.
- Nhập bất cứ thứ gì bạn thích vào ô B1. Chỉ cần không để nó trống.
- Đặt con trỏ vào bất kỳ ô nào trong cột B có số.
- Chuyển đến nhấp vào tab “Trang chủ” và nhấp vào “Sắp xếp & Lọc”.
- Trên menu thả xuống, chọn “Sắp xếp từ nhỏ nhất đến lớn nhất” hoặc “Sắp xếp từ lớn nhất đến nhỏ nhất”.
- Cuối cùng, chọn cột vừa chèn và nhấp chuột phải chọn “Xóa”. Và dán bảng trở lại tài liệu Word.
Sửa chữa tài liệu bị hỏng
Bạn có tin rằng các tài liệu được lưu trữ trên máy tính của mình là an toàn? Ngay cả khi bạn có thể bảo vệ máy tính của mình khỏi các cuộc tấn công, vẫn có khả năng tài liệu bị mất. Vì vậy, hãy nhớ rằng tập tin của bạn có thể không hoàn toàn an toàn. Do đó, hãy sử dụng dịch vụ sao lưu chuyên nghiệp. phục hồi docx công cụ trước sẽ là một lựa chọn tốt.
Giới thiệu tác giả:
Vera Chen là một chuyên gia phục hồi dữ liệu trong DataNumen, Inc., công ty hàng đầu thế giới về công nghệ khôi phục dữ liệu, bao gồm hư hỏng xls và pdf sửa chữa các sản phẩm phần mềm. Để biết thêm thông tin, hãy truy cập www.datanumennăm







