PNG32 PNG32 PNG32 PNG32
PNG32
Forum Excel, VBA, VSTO, Exceltips, Excelhj�lp PNG32 drivs av Excelspecialisten    Logga in     English
PNG32
PNG32 PNG32
PNG32

Logga in

PNG32

Du är inte inloggad. Logga in eller registrera dig för att skriva inlägg eller svara på inlägg.

För frågor om forumet, kontakta oss på webmaster@excelforum.se

PNG32 PNG32
PNG32 PNG32
PNG32

Excelforum

PNG32

 
ForumForumDiskussionerDiskussionerExcelExcelTa bort dubletterTa bort dubletter
Föregående Föregående
 
Nästa Nästa
Nytt inlägg
 2019-09-20 06:35
 

Jag har en tabell (Grunddata) som månatligen fylls på med 200-400 rader. 

De första kolumnerna ser ut som följer: 

Redov nr SSTE Klartext SSTE Mätdatum Redov datum
11655632 8500 Bark Barr                 20190528 20190701
11657682 8500 Bark Barr                 20190626 20190701
11657692 8500 Bark Barr                 20190626 20190701
11657701 8500 Bark Barr                 20190626 20190701
11657728 8500 Bark Barr                 20190627 20190701
11657750 8500 Bark Barr                 20190627 20190701
11657774 8500 Bark Barr                 20190627 20190701
11657826 8500 Bark Barr                 20190628 20190701
11657839 8500 Bark Barr                 20190628 20190703

 

Nu försöker jag skapa en funktion för att leta upp dubletter baserade på redovisningsnummer (kolumn A), ta bort dessa och sedan uppdatera mina pivot-tabeller. Hur går jag tillväga? Jag har hittat funktionen med att gå via Data - Ta bort dubletter men det vore bra om funktionen kunde implementeras i redan existerande makro. 

 

Sub Uppdatera_pivottabeller()

 

'Uppdatera alla pivot-tabeller

 

Dim pt As PivotTable

    Dim ws As Worksheet

 

    For Each ws In ActiveWorkbook.Worksheets

    For Each pt In ws.PivotTables

    pt.RefreshTable

    Next pt

    Next ws

    

    MsgBox "Uppdatering klar, glöm inte att välja rätt månad/period"

 

 

End Sub

 

Nytt inlägg
 2019-09-20 10:12
 
 Ändrad av anonymous  på 2019-09-20 10:31:58

Normalt sett brukar man unvida Select. men jag vett tusan hur man skall få det att funka annars. Dubblettfiltrering verkar kräva att du står i området på något sätt.

Innan din kommentar

'Uppdatera alla pivot-tabeller

kan du knöla in:

     Worksheets("blad1").Range("Grunddata").Select
     Worksheets("blad1").Range("Grunddata").RemoveDuplicates Columns:=1, Header:=xlYes

Fast naturligtvis med rätt blad- och Tabellnamn (om det är en tabell).
 
Om det inte är en "excel-tabell" så får du försöka att utöka området automatiskt på något sätt, typ:
    Worksheets("blad1").Range("A1").CurrentRegion.Select
    Selection.RemoveDuplicates Columns:=1, Header:=xlYes
 
 
 
PS: Under fliken utvecklare så finns "spela in makro". Om du spelar in ett makro samtidigt som du filtrerar bort dubbletter så får du en grund för att göra ett makro. Det är sällan perfekt, men du får ett skelett attt jobba med. 
 
 
 
Hmm: varför känns Dublett bättre än Dubblett?
Nytt inlägg
 2019-09-23 08:10
 
 Ändrad av Christian  på 2019-09-23 08:13:07
Hej hej

Dim sWS as worksheet: set sws = thisworkbook.sheets("namnPåDinGrunddataflik")
Dim rng as range: set rng = sws.range("namnpådintabell")

rng.RemoveDuplicates Columns:=2, Header:= _
xlYes

Värdet två ska ersättas med indexet för kolumnen där du har dina dubletter.

Dessa rader ska ligga utanför din loop.
Vidare så behöver du inte loopa dina sheets för att uppdatera dina pivottabeller: det räcker med raden:
ThisWorkbook.RefreshAll för att uppdatera dem :).

Edit: Såg att Ano klämde in ett svar, minuten före mig :=). Båda fungerar lika bra..

Mvh
Christian
Nytt inlägg
 2019-09-30 05:11
 

 Tack så mycket, båda två. 

Föregående Föregående
 
Nästa Nästa
ForumForumDiskussionerDiskussionerExcelExcelTa bort dubletterTa bort dubletter

PNG32 PNG32
Excelforum drivs av Excelspecialisten som bedriver utbildning i Excel och VBA, tillhandahåller support och hjälp med Excel, utvecklar program i Excel. Är ni i behov av en konsult inom Excel, VBA eller VSTO, eller söker en excelkurs, kontakta oss.
Copyright 2013 ExcelSpecialisten XLS AB   Användarvillkor  Personliga uppgifter