Avatar billede kim1a Ekspert
12. september 2016 - 14:53 Der er 1 løsning

VBA skabe pivot ud fra given tabel

Jeg arbejder tit med tabeller i Excel - jeg har dog aldrig helt forstået hvordan Excel nummererer disse.

Jeg ønsker en knap der kører en simpel rutine og skaber en pivot i den celle jeg står på baggrund af den tabel som er øverst på samme faneblad.

Jeg tænkte først at jeg ville definere et objekt, men måske det er nemmere blot at selektere celle A1 og så bruge xltoright og xlDown?

Nogen der har en simpel syntaks på det?

Her er mine noter so far, alt fra cells(1,1) er blot optaget, så det kan sikkert gøres langt mere elegant og skal naturligvis defineres rigtigt.

Sub skab_pivot()

Dim adrAktuelCelle As Address
adrAktuelCelle = ActiveCell.Address

Cells(1, 1).Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlToRight)).Select
   
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
        "Tabel15", Version:=6).CreatePivotTable TableDestination:="Ark1!R16C2", _
        TableName:="PivotTable1", DefaultVersion:=6
    Sheets("Ark1").Select
    Cells(16, 2).Select
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Bilagsnr.")
        .Orientation = xlRowField
        .Position = 1
    End With
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Varenr.")
        .Orientation = xlPageField
        .Position = 1
    End With
    ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
        "PivotTable1").PivotFields("Salgsbeløb (faktisk)"), _
        "Sum of Salgsbeløb (faktisk)", xlSum
    ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
        "PivotTable1").PivotFields("Kostbeløb (faktisk)"), "Sum of Kostbeløb (faktisk)" _
        , xlSum
    With ActiveSheet.PivotTables("PivotTable1").PivotFields( _
        "Sum of Kostbeløb (faktisk)")
        .NumberFormat = "#.##0,00"
    End With
Avatar billede kim1a Ekspert
13. september 2016 - 07:52 #1
Løsningen blev at bruge current region.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester