Gå til hovedindhold

Hvordan fjernes dublerede rækker fra tabellen i Word-dokument?

I Word-dokument kan der være nogle tabeller med duplikerede rækker, som du vil fjerne og beholde det første udseende nogle gange. I dette tilfælde kan du vælge at fjerne de duplikater manuelt, også du kan vælge at bruge VBA-koden.

Fjern dublerede rækker fra tabellen i Word


Fjern dublerede rækker fra tabellen i Word

1. Placer markøren ved den tabel, du vil fjerne de dobbelte rækker fra, tryk på Alt + F11 for at aktivere Microsoft Visual Basic til applikationer vindue.

2. klik indsatte > Moduler for at oprette et nyt modul.
doc fjern duplikat række tabel01

3. Kopier nedenstående koder og indsæt dem i den nye Moduler scripts.

VBA: Fjern dublerede rækker fra tabellen i 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

doc fjern duplikat række tabel02

4. Trykke F5 nøgle til at køre koden, så fjernes alle duplikatrækker.
doc fjern duplikat række tabel03

Bemærk: Ovenstående kode er store og små bogstaver, hvis du vil fjerne duplikerede rækker i tilfælde af ufølsomhed, kan du bruge nedenstående kode:

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

Hvis du vil fjerne duplikerede rækker i alle tabeller i dokumentet, skal du placere markøren et hvilket som helst dokumentsted uden for tabellen og derefter anvende en af ​​ovenstående koder.


Tabbed browsing og redigering af flere Word-dokumenter / Excel-projektmapper som Firefox, Chrome, Internet Explore 10!

Du er måske bekendt med at se flere websider i Firefox / Chrome / IE og skifte mellem dem ved let at klikke på tilsvarende faner. Her understøtter Office-fanen lignende behandling, som giver dig mulighed for at gennemse flere Word-dokumenter eller Excel-projektmapper i et Word-vindue eller Excel-vindue og nemt skifte mellem dem ved at klikke på deres faner.
Klik for gratis prøveversion af Office Tab!

Gennemse flere orddokumenter i et vindue som Firefox

Bedste kontorproduktivitetsværktøjer

Kutools for Word - Forøg din Word-oplevelse med Over 100 Bemærkelsesværdige funktioner!

🤖 Kutools AI-assistent: Transformer din skrivning med AI - Generer indhold  /  Omskriv tekst  /  Opsummer dokumenter  /  Spørg for information baseret på Dokument, alt sammen i Word

📘 Dokumentbeherskelse: Opdelt sider  /  Flet dokumenter  /  Eksporter udvalg i forskellige formater (PDF/TXT/DOC/HTML...)  /  Batch Konverter til PDF  /  Eksporter sider som billeder  /  Udskriv flere filer på én gang...

Indholdsredigering: Batch Find og erstat på tværs af flere filer  /  Ændr størrelse på alle billeder  /  Transponer tabelrækker og kolonner  /  Konverter tabel til tekst...

🧹 Ubesværet rengøring: Fej væk Ekstra pladser  /  Afsnit bryder  /  Alle overskrifter  /  Tekstbokse  /  Hyperlinks  / For mere fjernelse af værktøjer, gå til vores Fjern gruppe...

Kreative indlæg: Indsæt Tusind adskillere  /  Afkrydsningsfelter  /  Radio knapper  /  QR kode  /  Stregkode  /  Diagonal linjebord  /  Ligningstekst  /  Billede Caption  /  Tabeltekst  /  Flere billeder  / Oplev mere i Indsæt gruppe...

???? Præcisionsvalg: Find ud af specifikke sider  /  tabeller  /  former  /  overskrifter  / Forbedre navigation med mere Vælg funktioner...

Stjerneforbedringer: Naviger hurtigt til ethvert sted  /  automatisk indsæt gentagende tekst  /  skifte problemfrit mellem dokumentvinduer  /  11 Konverteringsværktøjer...

???? Vil du prøve disse funktioner? Kutools for Word tilbyder en 60-dages gratis prøveperiode, uden begrænsninger! 🚀
 
Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations