În articolul de astăzi, vă vom arăta 2 moduri inteligente de a sorta o coloană de texte după lungime în Cuvântul dvs.
Există mai multe moduri de a sorta o coloană de texte sau numere dintr-un tabel. Dar, v-ați gândit vreodată să sortați o coloană de texte după lungime? În acest caz, aspectul documentului va fi mai clar și mai ușor de citit.
Cu toate acestea, nu există o modalitate directă în Word de a sorta această regulă. Prin urmare, trebuie să căutăm soluții pentru a rezolva problema.
Metoda 1: Folosiți Word VBA
De exemplu, să presupunem că avem un tabel ca mai jos:
- În primul rând, în Word, apăsați „Alt+F11” pentru a declanșa editorul VBA.
- Mergeți pentru a crea un modul nou făcând clic pe „Normal” în coloana din stânga.
- Apoi faceți clic pe fila „Inserare” și alegeți „Modul” din meniul derulant.
- Apoi faceți dublu clic pe modul pentru a-l deschide și lipiți macrocomanda de mai jos acolo:
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
notițe:
Dacă tabelul nu conține niciun rând de antet, atunci trebuie să modificați următoarea linie de cod:
Selection.Sort ExcludeHeader:=True
Înlocuiți „adevărat” cu „fals”.
- Apoi faceți clic pe „Run”.
- Apoi, în prima casetă deschisă, introduceți numărul coloanei țintă, cum ar fi „2” pentru a doua coloană.
- Faceți clic pe "OK".
- În a doua casetă, introduceți un număr pentru a specifica o regulă de sortare. „0” reprezintă sortarea crescătoare, „1” descrescătoare.
- În mod similar, faceți clic pe „OK”.
Verificați efectul:
Metoda 2: Sortați în Excel
- În primul rând, selectați tabelul în Word și apăsați „Ctrl + C” pentru a-l copia.
- Apoi deschideți Excel și inserați-l apăsând „Ctrl+ V”. Acum, dacă tabelul nu are un rând de antet, atunci lipiți tabelul în celula A2.
- Apoi faceți clic pe litera coloanei respective. De exemplu, să presupunem că coloana C este coloana țintă. Veți vedea întreaga coloană în selecție.
- Apoi faceți clic dreapta și alegeți „Insert”.
- Va exista o nouă coloană înaintea coloanei C. Poziționați cursorul pe a doua celulă a coloanei noi.
- Introduceți „=LEN(C2)” în celula B2. Nu uitați să înlocuiți „C” cu unul real.
- Apoi plasați cursorul în colțul din dreapta jos al celulei B2 până când se transformă într-o cruce.
- Acum dublu clic. Veți vedea noua coloană plină cu numere. Acestea sunt numărul de caractere pentru textele din coloana C.
- Introduceți orice doriți în celula B1. Doar nu-l lăsa necompletat.
- Pune cursorul în orice celulă din coloana B care are un număr.
- Accesați fila „Acasă” și faceți clic pe „Sortați și filtrați”.
- În meniul derulant, alegeți „Sortați de la cel mai mic la cel mai mare” sau „Sortați de la cel mai mare la cel mai mic”.
- În cele din urmă, selectați coloana nou introdusă și faceți clic dreapta pentru a alege „Șterge”. Și lipiți tabelul înapoi în documentul Word.
Repararea documentelor corupte
Crezi că documentele tale stocate pe computere sunt în siguranță? Chiar și tu îți poți proteja computerul de atacuri. Există încă posibilitatea pierderii documentelor. Așadar, reține că fișierul tău s-ar putea să nu fie perfect sigur. Prin urmare, obține un... recuperare docx instrument în avans ar fi o alegere bună.
Introducerea autorului:
Vera Chen este expertă în recuperarea datelor DataNumen, Inc., care este lider mondial în tehnologiile de recuperare a datelor, inclusiv xls deteriorat și pdf repararea produselor software. Pentru mai multe informații vizitați www.datanumen.com







