Just nu i M3-nätverket
Gå till innehåll

Problem med pivottabell


Hagalund

Rekommendera Poster

Jag skapar en pivottabell med VBA-kod och som yta för tabellen har jag lagt in =FÖRSKJUTNING('Exportfil'!$A$1;0;0;ANTALV('Exportfil'!$A:$A);7) för att begränsa storleken på programmet.

 

Ibland trasslar programmet och misslyckas med att göra en pivottabell. Jag funderar nu på att ha en tom pivottabell som jag sedan uppdaterar data i MEN då kan man tydligen inte ha FÖRSKJUTNING på det sätt jag har det eftersom datorn ger svaret OGILTIG REFERENS.

 

Finns det något sätt att ha en tom pivottabell som man uppdaterar data i OCH den funktionalitet som FÖRSKJUTNING ger (begränsa storleken på programmet). :unsure:

Länk till kommentar
Dela på andra webbplatser

Mmh, dina data finns i samma fil som Pivot? problemet du har är att filen växer och blir jättestor?

 

Stäng av Pivottabellens cache så ska du se att det ordnar sig.

ta upp alternativ för tabellen (högerklicka i tabellen, välj alternativ). Leta i dialogen reda på kryssrutan "spara källdata med fil" och bocka ur denna.

 

Formeln du använder, har du skrivit denna direkt som källa för Pivot? Skriv in den i ett namn och använda detta namn som källa för Pivot. Det fungerar nog bättre. Kontrollera då även att namnet refererar enbart till det område du önskar. Onödigt stora källområden för Pivot är ett känt sätt att skapa väldigt stora filer.

Hur många celler refererar din förskjutningsformel till?

Länk till kommentar
Dela på andra webbplatser

Formeln FÖRSKJUTNING ligger redan i ett namn. Jag kan ha från ett par rader i källan till 65000 rader. När jag stänger av Cachen så fungerar det. HURRA

 

Frågan är bara varför. Har du något sätt att förklara detta på?

Det är ju en fördel om man begriper det man gör. :D

Länk till kommentar
Dela på andra webbplatser

Tja, en cache är en anpassad kopia av data i tabellen som är tänkt att snabba på beräkningen av tabellen. Slår man av denna måste tabellen återskapa cachen när tabellen ska visas. Något som kan ske när filen laddas exempelvis.

 

Om tabellen är över många celler blir givetvis cachen stor och när den sparas till fil blir filen även stor.

 

Nu fungerar din kod som den ska? När du skapar Pivottabeller eller uppdaterar dem? Varför det fungerar? Ingen aning men troligen finns det även annan handgrepp du kan göra i VBA, som att där fixa till cachen, innan du uppdaterar tabellen.

Länk till kommentar
Dela på andra webbplatser

Jo det fungerar nu. Det kan vara så att man bara har praktisk glädje av att lagra data i tabellen när datamängden är MYCKET stor (miljoner poster från en databas t ex). Vid mera måttliga mängder sker hämtningen tämligen snabbt ändå. Detta är en ren gissning.

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...