2012-11-06 13 views
5

Ich versuche herauszufinden, wie die Pivot-Tabellenquelldaten am Ende der Zeile aktualisiert werden, wenn sich die Daten mit VBA ändern. Mein aktueller Code ist unten:VBA Aktualisieren von Quelldaten für Pivot-Tabelle bis zum Ende der Zeile

Dim shBrandPivot As Worksheet 
Dim shCurrentWeek As Worksheet 
Dim shPriorWeek As Worksheet 
Dim shPivot As Worksheet 
Dim lr As Long 


Set shBrandPivot = ActiveWorkbook.Sheets("Brand Pivot") 
Set shCurrentWeek = ActiveWorkbook.Sheets("Current Week") 
Set shPriorWeek = ActiveWorkbook.Sheets("Prior Week") 
Set shPivot = ActiveWorkbook.Sheets("Pivot") 
lr = shCurrentWeek.Range("A" & Rows.Count).End(xlUp).Row 

With ActiveWorkbook.Sheets("Pivot").Activate 

ActiveSheet.PivotTableWizard SourceType:=xlDatabase, SourceData:="CurrentWeek!A3:X & lr" 

End With 

Der Fehler I bin immer Laufzeitfehler 1004: nicht Pivottable-Quelldatei öffnen: E: \ offline \ KXM2103 \ Data \ CurrentWeek

+0

Ist es möglich, einen dynamisch definierten Bereich zu verwenden und dann einfach Ihre Pivot-Tabelle in Ihrem Code zu aktualisieren? Wie werden Ihre Daten aktualisiert? – scott

+0

@scott für jetzt, meine Daten werden manuell aktualisiert, indem Sie zu Optionen -> Quelldaten ändern gehen. Ich denke an den Ansatz, den Sie besprochen haben, aber ich wollte sehen, ob es einen Weg gibt, es ausschließlich über VBA zu machen. – kmiao91

Antwort

5

es zu tun ausschließlich in VBA Du kannst es versuchen.

Dim shBrandPivot As Worksheet 
Dim shCurrentWeek As Worksheet 
Dim shPriorWeek As Worksheet 
Dim shPivot As Worksheet 
Dim lr As Long 
dim rng as range 

Set shBrandPivot = ActiveWorkbook.Sheets("Brand Pivot") 
Set shCurrentWeek = ActiveWorkbook.Sheets("Current Week") 
Set shPriorWeek = ActiveWorkbook.Sheets("Prior Week") 
Set shPivot = ActiveWorkbook.Sheets("Pivot") 
lr = shCurrentWeek.Range("A" & Rows.Count).End(xlUp).Row 
set rng = shcurrentweek.range("A3:X" & lr) 

With shPivot.PivotTables(1).PivotCache 
     .SourceData = rng.Address(True, True, xlR1C1, True) 
     .Refresh 
End With 
+0

Ich bekomme einen Kompilierfehler auf der xlPivotTableVersion14 (Variable nicht definiert) – kmiao91

+0

bearbeitet es, um nur die Version zu entfernen und Stick mit der Standardeinstellung – scott

+0

Ich erhalte jetzt einen "Objekt erforderlich" Fehler auf den Code – kmiao91

Verwandte Themen