¿Cómo eliminar filas duplicadas de la tabla en un documento de Word?
En un documento de Word, puede haber algunas tablas con filas duplicadas que desee eliminar y mantener la primera apariencia a veces. En este caso, puede optar por eliminar los duplicados uno por uno manualmente, también puede optar por usar el código VBA.
Eliminar filas duplicadas de la tabla en Word
Eliminar filas duplicadas de la tabla en Word
1. Coloque el cursor en la tabla de la que desea eliminar las filas duplicadas, presione Alt + F11 claves para habilitar el Microsoft Visual Basic para aplicaciones ventana.
2. Hacer clic en recuadro > Módulo para crear un nuevo módulo.
3. Copie los siguientes códigos y péguelos en el nuevo Módulo guión.
VBA: elimine filas duplicadas de la tabla en Word
Public Sub DeleteDuplicateRows2()
'UpdatebyExtendoffice20181011
Dim xTable As Table
Dim xRow As Range
Dim xStr As String
Dim xDic As Object
Dim I, J, KK, xNum As Long
If ActiveDocument.Tables.Count = 0 Then
MsgBox "This document does not have table(s).", vbInformation, "Kutools for Word"
Exit Sub
End If
Application.ScreenUpdating = False
Set xDic = CreateObject("Scripting.Dictionary")
If Selection.Information(wdWithInTable) Then
Set xTable = Selection.Tables(1)
For I = xTable.Rows.Count To 1 Step -1
Set xRow = xTable.Rows(I).Range
xStr = xRow.Text
xNum = -1
If xDic.Exists(xStr) Then
' xTable.Rows(I).Delete
For J = xTable.Rows.Count To 1 Step -1
If (xStr = xTable.Rows(J).Range.Text) And (J <> I) Then
xNum = xNum + 1
xTable.Rows(J).Delete
End If
Next
I = I - xNum
Else
xDic.Add xStr, I
End If
Next
Else
For I = 1 To ActiveDocument.Tables.Count
Set xTable = ActiveDocument.Tables(I)
xNum = -1
xDic.RemoveAll
For J = xTable.Rows.Count To 1 Step -1
Set xRow = xTable.Rows(J).Range
xStr = xRow.Text
xNum = -1
If xDic.Exists(xStr) Then
' xTable.Rows(I).Delete
For KK = xTable.Rows.Count To 1 Step -1
If (xStr = xTable.Rows(KK).Range.Text) And (KK <> J) Then
xNum = xNum + 1
xTable.Rows(KK).Delete
End If
Next
J = J - xNum
Else
xDic.Add xStr, J
End If
Next
Next
End If
Application.ScreenUpdating = True
End Sub
4. Prensa F5 para ejecutar el código, se eliminarán todas las filas duplicadas.
Nota:: El código anterior distingue entre mayúsculas y minúsculas, si desea eliminar filas duplicadas en caso de que no distingan entre mayúsculas y minúsculas, puede utilizar el siguiente código:
Public Sub DeleteDuplicateRows2()
'UpdatebyExtendoffice20181011
Dim xTable As Table
Dim xRow As Range
Dim xStr As String
Dim xDic As Object
Dim I, J, KK, xNum As Long
If ActiveDocument.Tables.Count = 0 Then
MsgBox "This document does not have table(s).", vbInformation, "Kutools for Word"
Exit Sub
End If
Application.ScreenUpdating = False
Set xDic = CreateObject("Scripting.Dictionary")
If Selection.Information(wdWithInTable) Then
Set xTable = Selection.Tables(1)
For I = xTable.Rows.Count To 1 Step -1
Set xRow = xTable.Rows(I).Range
xStr = UCase(xRow.Text)
xNum = -1
If xDic.Exists(xStr) Then
' xTable.Rows(I).Delete
For J = xTable.Rows.Count To 1 Step -1
If (xStr = xTable.Rows(J).Range.Text) And (J <> I) Then
xNum = xNum + 1
xTable.Rows(J).Delete
End If
Next
I = I - xNum
Else
xDic.Add xStr, I
End If
Next
Else
For I = 1 To ActiveDocument.Tables.Count
Set xTable = ActiveDocument.Tables(I)
xNum = -1
xDic.RemoveAll
For J = xTable.Rows.Count To 1 Step -1
Set xRow = xTable.Rows(J).Range
xStr = UCase(xRow.Text)
xNum = -1
If xDic.Exists(xStr) Then
' xTable.Rows(I).Delete
For KK = xTable.Rows.Count To 1 Step -1
If (xStr = xTable.Rows(KK).Range.Text) And (KK <> J) Then
xNum = xNum + 1
xTable.Rows(KK).Delete
End If
Next
J = J - xNum
Else
xDic.Add xStr, J
End If
Next
Next
End If
Application.ScreenUpdating = True
End Sub
Si desea eliminar filas duplicadas en todas las tablas del documento, coloque el cursor en cualquier lugar del documento fuera de la tabla y luego aplique uno de los códigos anteriores.
Navegación con pestañas y edición de varios documentos de Word / libros de trabajo de Excel como Firefox, Chrome, Internet Explore 10. |
Es posible que esté familiarizado con ver varias páginas web en Firefox / Chrome / IE y cambiar entre ellas haciendo clic fácilmente en las pestañas correspondientes. Aquí, Office Tab admite un procesamiento similar, que le permite examinar varios documentos de Word o libros de trabajo de Excel en una ventana de Word o de Excel, y cambiar fácilmente entre ellos haciendo clic en sus pestañas. |
![]() |
Herramientas de productividad de palabras recomendadas
Kutools para Word: más de 100 funciones avanzadas para Word, ahorre su 50% de tiempo
- Las operaciones complicadas y repetidas se pueden realizar un solo procesamiento en segundos.
- Inserte varias imágenes en carpetas en un documento de Word a la vez.
- Fusiona y combina varios archivos de Word en carpetas en uno con el orden que desees.
- Divida el documento actual en documentos separados según el encabezado, el salto de sección u otros criterios.
- Convierta archivos entre Doc y Docx, Docx y PDF, colección de herramientas para conversiones y selección comunes, etc.