[easy_youtube_gallery id=uMK0prafzw0,8Uee_mcxvrw,HcXNPI-IPPM,JvMXVHVr72A,AIXUgtNC4Kc,K8nrF5aXPlQ,cegdR0GiJl4,L-wpS49KN00,KbW9JqM7vho ar=16_9 cols=3 thumbnail=hqdefault controls=0 playsinline=1 privacy=1 title=top wall=1 class=mySuperClass]
Först publicerad: 2015-04-07

Formel: Pivottabells senaste uppdatering

Följande VBA-kod i Excel skapar en funktion som återger datum och klockslag när en pivot-tabell senast uppdaterades. Resultatet av koden blir helt enkelt en formel som du kan använda rakt av i kalkylbladet.

Detta kan vara användbart t ex när man har automatisk uppdatering avslagen. Angående uppdateringar av dessa tabeller kan du läsa mer på Uppdatera Pivottabeller i Excel.

I bilden nedan återges ett exempel på hur vi med hjälp av denna formel skriver ut tidpunkten för senaste uppdatering av en pivottabell.

 

Formel som visar en pivottabells tidpunkt för senaste uppdatering.

 

Kort om VBA-koden

Koden placeras i en modul i aktuell arbetsbok. RefreshDate ger oss tidpunkt för senaste uppdatering, vilken vi sedan delar upp i “Datum” och “Klockslag”. Efter detta formaterar vi dessa uppgifter, och de är därefter klara att sättas ihop till den svarssträng som funktionen skickar tillbaka till kalkylbladet, och som också skrivs ut i cellen.

Public Function PivUppdaterad(rngCell As Range) As Variant
'--------------------------------------------------------------------
' Funktionen återger tidpunkt för pivottabellens senaste uppdatering
' =PivUppdaterad(A10) skriver ut pivottabellens senaste uppdatering, 
' t ex "2015-12-04 [10:28:38]"
' (c) ExcelKungen.com
'--------------------------------------------------------------------
  Dim pivotTabell As PivotTable
 Dim strTimestamp() As String 'matrisvariabel för (0) datum, (1) tid
 Dim strDatum As String
 Dim strTidpunkt As String
 
 On Error Resume Next
 
 'referens til pivottabellen
 Set pivotTabell = rngCell.Cells(1, 1).PivotTable
 
 If Err.Number = 0 Then
 'tar fram och formaterar datum och klockslag
  strTimestamp = Split(pivotTabell.RefreshDate, " ") 'splittar datum & tid
  strDatum = Format(strTimestamp(0), "YYYY-MM-DD") 'formaterar datumet
  strTidpunkt = Format(strTimestamp(1), "hh:mm:ss;@") 'formaterar tid 
  'svarsmeddelande sätts ihop
  PivUppdaterad = strDatum & " [" & strTidpunkt & "]"
 Else
 'meddelande om fel uppstår
  PivUppdaterad = "Error: Cellreferensen ej pivottabell."
 End If
 
 End Function