Avatar billede frederikpag Nybegynder
14. marts 2007 - 12:19 Der er 4 kommentarer og
1 løsning

Macro således at pivattabel ikke skal omdøbes

Kære eksperter,

Jeg har lavet nedestående macro til at lave nogle formler i en pivottabel jeg ofte trækker. Macroen kræver dog, at pivottabellen hedder "Pivottabel1", hvilke den langt fra altid gør - kan man arbejde sig rundt om dette? - enten via en anden macro som omdøber pivotabellen eller ved at rette i koden?


Sub formler_pivot()
'
    ActiveSheet.PivotTables("Pivottabel1").CalculatedFields.Add "Vol", _
        "='-AFSÆTNING-'*-1", True
    ActiveSheet.PivotTables("Pivottabel1").CalculatedFields.Add "OMS", _
        "='-OMSÆTNING-'*-1", True
    ActiveSheet.PivotTables("Pivottabel1").CalculatedFields.Add "DB", _
        "='-BOGFØRTVÆRDI-'+'-VÆRDIREGULERING-' -'-OMSÆTNING-'", True
    ActiveSheet.PivotTables("Pivottabel1").CalculatedFields.Add "DG", _
        "=(DB *100)/OMS", True
    ActiveSheet.PivotTables("Pivottabel1").PivotFields("Vol").Orientation = _
        xlDataField
    ActiveSheet.PivotTables("Pivottabel1").PivotFields("OMS").Orientation = _
        xlDataField
    ActiveSheet.PivotTables("Pivottabel1").PivotFields("DB").Orientation = _
        xlDataField
    ActiveSheet.PivotTables("Pivottabel1").PivotFields("DG").Orientation = _
        xlDataField
    Range("A5").Select
    ActiveSheet.PivotTables("Pivottabel1").DataPivotField.Orientation = xlHidden
End Sub
Avatar billede excelent Ekspert
14. marts 2007 - 13:16 #1
indsæt i starten af koden denne: Navn=Inputbox("Indtast navn ")

udskift alle "Pivottabel1" med Navn
Avatar billede frederikpag Nybegynder
14. marts 2007 - 16:36 #2
Det har jeg så gjort, nu kommer den frem og beder om et navn - hvad end jeg indtaster kommer der fejl. Jeg ønsker egentlig helst ikke at skulle indtaste noget. Koder skal helst virke ligegyldigt om tabellen hedder "pivottabel1" eller "pivottabel2" eller "pivottabel3" osv. Er det ikke muligt at skrive noget lignende "pivottabel*"?
Avatar billede kabbak Professor
14. marts 2007 - 17:01 #3
Sub formler_pivot()
   
          Navn = ActiveSheet.Range("A5").PivotTable.Name ' celle adressen, skal være en celle som pivot tabellen er i
         
            ActiveSheet.PivotTables(Navn).CalculatedFields.Add "Vol", _
                    "='-AFSÆTNING-'*-1", True
            ActiveSheet.PivotTables(Navn).CalculatedFields.Add "OMS", _
                    "='-OMSÆTNING-'*-1", True
            ActiveSheet.PivotTables(Navn).CalculatedFields.Add "DB", _
                    "='-BOGFØRTVÆRDI-'+'-VÆRDIREGULERING-' -'-OMSÆTNING-'", True
            ActiveSheet.PivotTables(Navn).CalculatedFields.Add "DG", _
                    "=(DB *100)/OMS", True
            ActiveSheet.PivotTables(Navn).PivotFields("Vol").Orientation = _
                    xlDataField
            ActiveSheet.PivotTables(Navn).PivotFields("OMS").Orientation = _
                    xlDataField
            ActiveSheet.PivotTables(Navn).PivotFields("DB").Orientation = _
                    xlDataField
            ActiveSheet.PivotTables(Navn).PivotFields("DG").Orientation = _
                    xlDataField
            Range("A5").Select
            ActiveSheet.PivotTables(Navn).DataPivotField.Orientation = xlHidden

End Sub
Avatar billede frederikpag Nybegynder
14. marts 2007 - 17:28 #4
Det fungere jo bare snorlige - den sidder lige i skabet! Venligst svar så du kan få dine velfortjente points ;-) Tak for hjælpen!
Avatar billede kabbak Professor
14. marts 2007 - 17:47 #5
et svar ;-))
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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