Note: The other languages of the website are Google-translated. Back to English

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

Anbefalede Word-produktivitetsværktøjer

 

Kutools til Word - mere end 100 avancerede funktioner til Word, spar din 50% tid

  • Komplicerede og gentagne operationer kan udføres engangsbehandling på få sekunder.
  • Indsæt flere billeder på tværs af mapper i Word-dokumentet på én gang.
  • Flet og kombiner flere Word-filer på tværs af mapper i en med den ønskede rækkefølge.
  • Opdel det aktuelle dokument i separate dokumenter efter overskrift, sektionsskift eller andre kriterier.
  • Konverter filer mellem Doc og Docx, Docx og PDF, samling af værktøjer til almindelige konverteringer og markering osv. ...
Sorter kommentarer efter
Kommentarer (0)
Ingen vurderinger endnu. Vær den første til at bedømme!
Der er endnu ingen kommentarer her
Efterlad dine kommentarer
Sender som gæst
×
Bedøm dette indlæg:
0   Tegn
Foreslåede steder

Følg os

Copyright © 2009 - www.extendoffice.com. | Alle rettigheder forbeholdes. Drevet af ExtendOffice. | | Sitemap
Microsoft og Office-logoet er varemærker eller registrerede varemærker tilhørende Microsoft Corporation i USA og / eller andre lande.
Beskyttet af Sectigo SSL