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

Hur flyttar man dubbla rader till ett annat ark i Excel?

Om du har en lista med dataintervall som innehåller några dubblettvärden i en viss kolumn, nu vill du flytta hela raderna till ett annat ark baserat på dubblettcellerna. Hur kunde du hantera den här uppgiften i Excel?

Flytta hela rader till ett annat ark baserat på duplicerade celler i en kolumn

Flytta hela rader till ett annat ark baserat på dubbla rader


Flytta hela rader till ett annat ark baserat på duplicerade celler i en kolumn

Om det finns dubbla värden i en kolumn flyttar du hela raderna till ett annat ark, följande VBA-kod kan göra dig en tjänst:

1. Håll ner ALT + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.

2. Klicka Insert > Modulernaoch klistra in följande kod i modulfönstret.

VBA-kod: Flytta hela rader till ett annat ark baserat på duplicerade celler i en kolumn:

Sub CutDuplicates()
'Updateby Extendoffice
    Dim xRgS As Range
    Dim xRgD As Range
    Dim I As Long, J As Long
    On Error Resume Next
    Set xRgS = Application.InputBox("Please select the column:", "KuTools For Excel", Selection.Address, , , , , 8)
    If xRgS Is Nothing Then Exit Sub
    Set xRgD = Application.InputBox("Please select a desitination cell:", "KuTools For Excel", , , , , , 8)
    If xRgD Is Nothing Then Exit Sub
    xRows = xRgS.Rows.Count
    J = 0
    For I = xRows To 1 Step -1
        If Application.WorksheetFunction.CountIf(xRgS, xRgS(I)) > 1 Then
            xRgS(I).EntireRow.Copy xRgD.Offset(J, 0)
            xRgS(I).EntireRow.Delete
            J = J + 1
        End If
    Next
End Sub

3. Tryck sedan på F5 nyckel för att köra den här koden och välj kolumnen som innehåller de duplicerade cellerna du vill flytta baserat på, i dialogrutan som visas.

4. Klicka sedan OK, i en annan rutan, välj en cell i ett annat ark där du vill placera de flyttade raderna, se skärmdump:

5. Och klicka sedan på OK, raderna som har dubbla värden i kolumn A har flyttats till ett nytt ark, se skärmdump:


Flytta hela rader till ett annat ark baserat på dubbla rader

Om du vill flytta de dubbla raderna från ett cellområde kan följande VBA-kod hjälpa dig:

1. Håll ner ALT + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.

2. Klicka Insert > Modulernaoch klistra in följande kod i modulfönstret.

VBA-kod: Flytta hela rader till ett annat ark baserat på dubbla rader:

Sub CutDuplicates()
'Updateby Extendoffice
    Dim xRgD As Range, xRgS As Range
    Dim I As Long, J As Long, K As Long, KK As Long
    On Error Resume Next
    Set xRgS = Application.InputBox("Please select the data range:", "KuTools For Excel", Selection.Address, , , , , 8)
    If xRgS Is Nothing Then Exit Sub
    Set xRgD = Application.InputBox("Please select a desitination cell:", "KuTools For Excel", , , , , , 8)
    If xRgD Is Nothing Then Exit Sub
    KK = 0
    For I = xRgS.Rows.Count To 1 Step -1
        For J = 1 To I - 1
            For K = 1 To xRgS.Columns.Count
                Debug.Print xRgS.Rows(I).Cells(, K).Value
                Debug.Print xRgS.Rows(J).Cells(, K).Value
                If xRgS.Rows(I).Cells(, K).Value <> xRgS.Rows(J).Cells(, K).Value Then Exit For
            Next
            If K = xRgS.Columns.Count + 1 Then
                xRgS.Rows(I).EntireRow.Copy xRgD.Offset(KK, 0).EntireRow
                xRgS.Rows(I).EntireRow.Delete
                KK = KK + 1
            End If
        Next
    Next
End Sub

3. Tryck sedan på F5 nyckel för att köra den här koden, i dialogrutan popped out, välj välj det dataintervall som du vill flytta de dubbla raderna, se skärmdump:

4. Klicka OK och sedan i en annan snabbruta, välj en cell i ett nytt ark där du vill placera de flyttade böneraderna, se skärmdump:

5. Klicka sedan OK -knappen, och nu har de dubbla raderna flyttats till ett annat ark du angav på en gång, se skärmdump:


De bästa Office-produktivitetsverktygen

Kutools för Excel löser de flesta av dina problem och ökar din produktivitet med 80%

  • återanvändning: Sätt snabbt i komplexa formler, diagram och allt som du har använt tidigare; Kryptera celler med lösenord; Skapa e-postlista och skicka e-post ...
  • Super Formula Bar (enkelt redigera flera rader med text och formel); Läslayout (enkelt läsa och redigera ett stort antal celler); Klistra in i filtrerat intervall...
  • Sammanfoga celler / rader / kolumner utan att förlora data; Delat cellinnehåll; Kombinera duplicerade rader / kolumner... Förhindra duplicerade celler; Jämför intervall...
  • Välj Duplicera eller Unikt Rader; Välj tomma rader (alla celler är tomma); Super Find och Fuzzy Find i många arbetsböcker; Slumpmässigt val ...
  • Exakt kopia Flera celler utan att ändra formelreferens; Skapa referenser automatiskt till flera ark; Sätt in kulor, Kryssrutor och mer ...
  • Extrahera text, Lägg till text, ta bort efter position, Ta bort mellanslag; Skapa och skriva ut personsökningstalsatser; Konvertera mellan celler innehåll och kommentarer...
  • Superfilter (spara och tillämpa filterscheman på andra ark); Avancerad sortering efter månad / vecka / dag, frekvens och mer; Specialfilter av fet, kursiv ...
  • Kombinera arbetsböcker och arbetsblad; Sammanfoga tabeller baserat på nyckelkolumner; Dela data i flera ark; Batchkonvertera xls, xlsx och PDF...
  • Mer än 300 kraftfulla funktioner. Stöder Office / Excel 2007-2021 och 365. Stöder alla språk. Enkel implementering i ditt företag eller organisation. Fullständiga funktioner 30 dagars gratis provperiod. 60 dagars pengarna tillbaka-garanti.
kte-flik 201905

Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!
officetab botten
Sortera kommentarer efter
Kommentarer (6)
Inga betyg än. Bli först med att betygsätta!
Denna kommentar minimerades av moderatoren på webbplatsen
Det var precis vad jag letade efter, tack! Jag gjorde det fel de första gångerna och sedan fortsatte det att frysa. Men när jag väl gjorde det exakt som skärmdumparna (välja exakt intervall, kopiera/klistra in rubrikerna i det andra arket och bara välja det första fältet under den första rubriken) var makron omedelbar.
Denna kommentar minimerades av moderatoren på webbplatsen
Det fungerar brorsan!!!!! Tack.
Denna kommentar minimerades av moderatoren på webbplatsen
Av någon anledning. Detta fungerade en gång, men jag kan inte köra det igen. DET tar hela tiden timeout. Några tips?
Denna kommentar minimerades av moderatoren på webbplatsen
Hej, que tal,

Tengo una duda con respecto a esta macro; La macro funciona perfectamente y es justo lo que necesito, el problema es que habitualmente necesito utilizarla con tablas de excel en las que hay como mas de 50 mil entradas.

Användning, Excel oundvikliga se colapsa och ingen response.

Hay alguna manera de conseguir que esta macro funcione en estos casos? O quizas, conseguir alguna formula/combinacion de formulas en excel que haga lo mismo? Lo comento porque en el caso de las formulas, normalmente excel no suele tardar tanto en processar y lo resuelve mas rapido.

Hälsningar och tack.

Raphael.
Denna kommentar minimerades av moderatoren på webbplatsen
Hallå,

Tenia una pregunta con respecto a esta macro; Esta macro es exactamente lo que necesito y funciona perfectamente, men jag har problem som solo funciona en grupo de datos que no Sean Muy Grandes.

Cuando la aplico sobre un grupo de datos grandes (en mi caso, 50mil filas), excel inevitablemente colapsa; Han probado muchas cosas pero sigue colapsando.

Hay alguna manera de hacer que la macro funcione en estos casos? alguna idé? Gracias de antemano.

Raphael.
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Rafael

Ja, som du sa, om data är stor kommer inte vba-koden att fungera perfekt. I det här fallet kan du använda hjälpkolumnen för att markera dubblettraden först, använd sedan filterfunktionen för att filtrera bort dubblettraden, slutligen kopiera dubblettraden till ett annat kalkylblad. Se nedanstående demo:
För att hitta dubblettraderna, använd denna formel: =IF(COUNTIFS($A$2:$A2,$A2,$B$2:$B2,$B2,$C$2:$C2,$C2) >1, "Duplicate row", "")
Om du bara vill hitta dubblettcellerna i en kolumn, använd denna formel: =OM(COUNTIFS($A$2:$A2,$A2) >1, "Duplicera rad", "")
https://www.extendoffice.com/images/stories/comments/comment-skyyang/move-duplicates.gif
Gör ett försök, hoppas det kan hjälpa dig!
Det finns inga kommentarer här ännu
Lämna dina kommentarer
Postar som gäst
×
Betygsätt detta inlägg:
0   Tecken
Föreslagna platser

Följ oss

Copyright © 2009 - www.extendoffice.com. | Alla rättigheter förbehållna. Drivs av ExtendOffice. | | Sitemap
Microsoft och Office-logotypen är varumärken eller registrerade varumärken som tillhör Microsoft Corporation i USA och / eller andra länder.
Skyddad av Sectigo SSL