¿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.
Note: 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. |
Las mejores herramientas de productividad de oficina
Kutools for Word - Mejore su experiencia con Word con Over 100 ¡Características notables!
🤖 Asistente de IA de Kutools: Transforma tu escritura con IA - Generar contenido / Reescribir texto / Resumir documentos / Solicite información basado en el documento, todo dentro de Word
📘 Dominio del documento: Dividir páginas / Combinar documentos / Exportar selección en varios formatos (PDF/TXT/DOC/HTML...) / Convertir por lotes a PDF / Exportar páginas como imágenes / Imprima varios archivos a la vez...
✏ Edición de contenidos: Buscar y reemplazar por lotes en varios archivos / Cambiar el tamaño de todas las imágenes / Transponer filas y columnas de tabla / Convertir tabla en texto...
🧹 Limpieza sin esfuerzo: barrer Espacios extra / Saltos de sección / Todos los encabezados / Cuadros de texto / Los hipervínculos / Para obtener más herramientas de extracción, diríjase a nuestro Quitar grupo...
➕ Inserciones creativas: Insertar Mil Separadores / Casillas de verificación / Botones de radio / Código QR / Barcode / Tabla de líneas diagonales / Título de la ecuación / Captura de imagen / Pie de tabla / Varias imágenes / Descubre más en el Insertar grupo...
🔍 Selecciones de precisión: Localizar páginas específicas / tablas / formas / párrafos de encabezado / Mejorar la navegación con más, Seleccionar características...
⭐ Mejoras de estrellas: Navegue rápidamente a cualquier ubicación / insertar automáticamente texto repetitivo / alternar sin problemas entre ventanas de documentos / 11 herramientas de conversión...