Hoppa till huvudinnehåll

Hur tar jag bort dubbla rader från tabellen i Word-dokument?

I Word-dokument kan det finnas några tabeller med dubbla rader som du vill ta bort och behålla det första utseendet ibland. I det här fallet kan du välja att ta bort dubbletterna en efter en manuellt, du kan också välja att använda VBA-koden.

Ta bort dubbla rader från tabellen i Word


Ta bort dubbla rader från tabellen i Word

1. Placera markören vid den tabell du vill ta bort dubbletteraderna från, tryck på Alt + F11 för att aktivera Microsoft Visual Basic för applikationer fönster.

2. klick Insert > Modulerna för att skapa en ny modul.
doc ta bort dubbla rader tabell01

3. Kopiera nedanstående koder och klistra in dem i den nya Modulerna skript.

VBA: Ta bort dubbla rader från 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 ta bort dubbla rader tabell02

4. Tryck F5 nyckel för att köra koden, då tas alla dubbletterader bort.
doc ta bort dubbla rader tabell03

Anmärkningar: Ovanstående kod är skiftlägeskänslig, om du vill ta bort dubbla rader om det inte är skiftlägeskänsligt kan du använda koden nedan:

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

Om du vill ta bort dubbletterader i alla tabeller i dokumentet, placerar du markören på valfri plats utanför dokumentet och tillämpar sedan en av ovanstående koder.


Tabbad surfning och redigering av flera Word-dokument / Excel-arbetsböcker som Firefox, Chrome, Internet Explore 10!

Du kanske är bekant att visa flera webbsidor i Firefox / Chrome / IE och växla mellan dem genom att enkelt klicka på motsvarande flikar. Här stöder Office Tab liknande bearbetning, som låter dig bläddra i flera Word-dokument eller Excel-arbetsböcker i ett Word-fönster eller Excel-fönster och enkelt växla mellan dem genom att klicka på deras flikar.
Klicka för gratis provversion av Office Tab!

Bläddra i flera orddokument i ett fönster som Firefox

Bästa kontorsproduktivitetsverktyg

Kutools för Word - Höj din ordupplevelse med Over 100 Anmärkningsvärda funktioner!

Dyk in i de markerade funktionerna nedan eller klicka här för att utforska den fulla kraften i Kutools för Word.

📘 Dokumentbehärskning: Dela sidor  /  Sammanfoga dokument  /  Exportera urval i olika format (PDF/TXT/DOC/XLSX)  /  Batchkonvertera till PDF  /  Exportera sidor som bilder  /  Skriv ut flera filer samtidigt ...

Innehållsredigering: Batch Hitta och ersätt över flera filer   /  Ändra storlek på alla bilder   /  Transponera tabellrader och kolumner  /  Konvertera tabell till text ...

🧹 Enkel rengöringSvep bort Extra utrymmen  /  Avsnitt bryter  /   Alla rubriker  /  Textrutor  /  Hyperlänkar  /  För fler borttagningsverktyg, gå till vår Remove Group

Kreativa inlägg: Insert Tusen avskiljare  /  Kryssrutor  /  radio Knappar  /  QR-kod  /  Streckkod  /  Diagonal linjebord  /  Bildtext för ekvation  /  Bild Bildtext  /  Tabelltextning  /  Flera bilder  /  Upptäck mer i vår Insert Group

🔍 Precisionsval: Hitta specifika sidor  /  Tabellerna  /  former  /  rubrikerna  /  Navigera med lätthet med hjälp av vår Select Group

Stjärnförbättringar: Navigera snabbt till vilken plats som helst  /  infoga repetitiv text automatiskt  /  växla sömlöst mellan dokumentfönster  /  11 Konverteringsverktyg ...

Förvandla dina Word-uppgifter med Kutools. 👉 Ladda ner med 30-dagars provversion nu 🚀.

Läs mer       Gratis nedladdning      Inköp
 
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