Wie kann ich eine Pivot-Tabelle mit VBA erstellen?
Erstellen von Pivot-Tabellen in Excel mithilfe von Visual Basic für Applikationen (VBA) können Sie sparen Zeit aufgrund Ihrer nicht die Tabellen manuell zu erstellen. VBA ist eine Computer-Programmiersprache, die in Microsoft Office-Anwendungen zur Automatisierung von Routineaufgaben wie Erstellen einer Pivottabelle verwendet. Verbringen Sie nicht Ihre Zeit, Pivot-Tabellen manuell erstellen, wenn Sie viele Blätter in Ihrer Arbeitsmappe haben; Stattdessen erstellen Sie eine Sub-Prozedur, um dynamisch zu erstellen.
Anweisungen
1 Starten Sie Microsoft Office Excel und geben Sie "Kunde" in "A1", "Item" in "B1" und "Menge" in "C1." Geben Sie "Jon" in "A2", "Jon" in "A3", "Clara" in "A4", "Clara" in "A5" und "Clara" in "A6." Geben Sie "Soda" in "B2", "Bier" in "B3", "Soda" in "B4", "in"B5"und"Bier"in"A6."Wasser" Geben Sie "2" in "C2", "5" in "C3" "10" in "C4", "12" in "C5" und "15" in "C6."
2 Klicken Sie auf die Registerkarte "Entwicklertools" und klicken Sie auf "Visual Basic", der VB-Editor zu starten. Geben Sie den folgenden Code zum Erstellen einer neuen VBA-Sub-Prozedur:
Private Sub createPivotTable()
3 Erstellen Sie die Variablen, die Sie verwenden, um die Pivot-Tabelle erstellen, indem Sie den folgenden Code hinzufügen:
Dim pt As PivotTable
Dim wrkSht As Worksheet
Dim pvtSht As Worksheet
Dim PTCache As PivotCache
Dim PRange As Range
Dim finalRow As Long
Dim finalCol As Long
4
Definieren Sie die Arbeitsblätter, die Sie verwenden möchten:
Set wrkSht = Worksheets("Sheet1")
Set pvtSht = Worksheets("Sheet2")
5
Bestimmen Sie die Anzahl Zeilen und Spalten mit Daten:
finalRow = wrkSht.Cells(Application.Rows.Count, 1).End(xlUp).Row
finalCol = wrkSht.Cells(1, Application.Columns.Count).End(xlToLeft).Column
6
Definieren Sie den Bereich für Ihre Daten:
Set PRange = wrkSht.Cells(1, 1).Resize(finalRow, finalCol)
Set PTCache = ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:=PRange)
7
Erstellen die Pivot-Tabelle in "Tabelle2:"
Set pt = PTCache.createPivotTable(TableDestination:=pvtSht.Cells(1, 1), _
TableName:="SamplePivot")
pt.ManualUpdate = True
8
Definieren Sie die Quelldaten für die Pivot-Tabelle:
pt.AddFields RowFields:=Array("Item")
With pt.PivotFields("Qty")
.Orientation = xlDataField
.Function = xlSum
.Position = 1
End With
pt.ManualUpdate = False
9
Beenden Sie Ihre Sub durch Eingabe von "End Sub" am Ende der Prozedur. Mit "F5" führen Sie die Prozedur und Erstellen der Pivot-Tabelle mit VBA.