ich denke, das ein einfacher sein sollte bedenken, dass ich sehr wenig VB Wissen :) Ich habe einen Makro aufgezeichnet eine Pivot-Tabelle für einen Bereich auf der aktuellen Seite zu erstellen. Natürlich ist das der Code, um eine Pivot-Tabelle für dieses spezifische Blatt zu erstellen. Ich versuche, den Code anzupassen, um den Namen des aktiven Blattes zu nehmen, so dass ich dieses Makro über verschiedene Blätter hinweg verwenden kann. Ich habe versucht, genau zu suchen und zu finden, wie man den Namen zurückholt und dann diesen Namen dem Code zur Verfügung stellt, der der Prozess der Erschaffung der Pivot-Tabelle sein wird.Passing Excel-Tabelle Namen in Makro VB
ich eine Straßensperre an dem ActiveWorkbook.PivotCaches.Create Abschnitt des Codes bin zu schlagen. Ich erhalte die Meldung "Laufzeitfehler '1004': Anwendungsdefinierte oder objektdefinierte Fehler".
Jede Hilfe würde sehr geschätzt werden!
Sub Macro1()
Dim sht As String
sht = ActiveSheet.Name
Columns("A:K").Select
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
Worksheets(sht).Range("!R1C1:R1048576C11"), Version:=6).CreatePivotTable TableDestination:= _
Worksheets(sht).Range("!R1C14"), TableName:="PivotTable3", DefaultVersion:=6
ActiveSheet.Select
Cells(1, 14).Select
With ActiveSheet.PivotTables("PivotTable3").PivotFields("Department")
.Orientation = xlRowField
.Position = 1
End With
With ActiveSheet.PivotTables("PivotTable3").PivotFields(_
"Originating Master Name")
.Orientation = xlRowField
.Position = 2
End With
With ActiveSheet.PivotTables("PivotTable3").PivotFields("Net")
.Orientation = xlRowField
.Position = 3
End With
With ActiveSheet.PivotTables("PivotTable3").PivotFields("Month")
.Orientation = xlRowField
.Position = 4
End With
ActiveSheet.PivotTables("PivotTable3").AddDataField ActiveSheet.PivotTables(_
"PivotTable3").PivotFields("Net"), "Count of Net", xlCount
With ActiveSheet.PivotTables("PivotTable3").PivotFields("Month")
.Orientation = xlColumnField
.Position = 1
End With
With ActiveSheet.PivotTables("PivotTable3").PivotFields("Count of Net")
.Caption = "Sum of Net"
.Function = xlSum
End With
End Sub
Ich verwende derzeit Excel 2016 – Zwick44