Avatar billede jath08ac Forsker
12. marts 2018 - 11:56 Der er 1 løsning

Indsæt pivottabel via VBA

Hej,

Jeg har lavet nedenstående kode som driller lidt:

UDDRAG AF KODE:
            'Define Data Range
            LastRow = DSheet.Cells(Rows.Count, 1).End(xlUp).Row
            LastCol = DSheet.Cells(1, Columns.Count).End(xlToLeft).Column
            Set PRange = DSheet.Cells(1, 1).Resize(LastRow, LastCol)
 
  Når jeg køre koden og prøver at stoppe den ved Set PRange, så er PRange = Nothhing. Men når jeg holder musen og LastRow og LastCol i samme linje, så viser den hhv. 28 og 37.

Hvad gør jeg forkeret.

Hele koden fremgår nedenfor.

Application.ScreenUpdating = False
     
     
'Declare Variables
Dim PSheet As Worksheet
Dim DSheet As Worksheet
Dim PCache As PivotCache
Dim PTable As PivotTable
Dim PRange As Range
Dim LastRow As Long
Dim LastCol As Long
     
'År = Range("IDagÅr")


'CwS = Worksheets.Count + 1

        'Insert a New Blank Worksheet
           
            'Insert a New Blank Worksheet
           
            On Error Resume Next
            Application.DisplayAlerts = False
            Worksheets("Udløb_Udskrift").Delete
            Sheets.Add Before:=ActiveSheet
            ActiveSheet.Name = "Udløb_Udskrift"
            Application.DisplayAlerts = True
            Set PSheet = Worksheets("Udløb_Udskrift")
            Set DSheet = Worksheets("Data")
           
            'Define Data Range
            LastRow = DSheet.Cells(Rows.Count, 1).End(xlUp).Row
            LastCol = DSheet.Cells(1, Columns.Count).End(xlToLeft).Column
            Set PRange = DSheet.Cells(1, 1).Resize(LastRow, LastCol)
           
            'Define Pivot Cache
            Set PCache = ActiveWorkbook.PivotCaches.Create _
            (SourceType:=xlDatabase, SourceData:=PRange). _
            CreatePivotTable(TableDestination:=PSheet.Cells(6, 2), _
            TableName:="Data1")
           
            'Insert Blank Pivot Table
            Set PTable = PCache.CreatePivotTable _
            (TableDestination:=PSheet.Cells(6, 2), TableName:="Data1")
Avatar billede kim1a Ekspert
12. marts 2018 - 16:03 #1
Hvad gør resize? Skal det ikke blot være cells? i din Set PRange?
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



Seneste spørgsmål Seneste aktivitet
I dag 06:10 Excel åbner fil i kæmpe format Af Aske i Excel
I går 22:00 Datafordeler Af Lsk i PHP
I går 12:37 Summere beløb pr. dato Af TTA i Excel
31/1022:44 Tilslutte chassic fans Af viking69 i PC
31/1020:28 LED lysstofrør Af ErikHg i Fri debat