Hi Team,
ich hab viel nachgelesen, aber komme leider nicht weiter.
Problem:
Mein Code funktioniert wenn ich ihn manuell aus dem Editor abspiele. Wenn ich den Button klicke oder ihn über Alt+F8 abspielen will nicht. Andere Codes aus dem Modul funktionieren (Einfache Codes, die auch anders heißen)
Habe gelesen, dass es an den variablen liegen könnte, aber mein ganzer Code ist zusammengeklaut und ich kann ihn nicht verändern
Außerdem bin ich über den Punkt: ' Define Calculated Fields noch nicht glücklich. Er funktioniert, sieht aber nicht so sauber aus.
Könnt ihr mir hier helfen?
VG
Chris
ich hab viel nachgelesen, aber komme leider nicht weiter.
Problem:
Mein Code funktioniert wenn ich ihn manuell aus dem Editor abspiele. Wenn ich den Button klicke oder ihn über Alt+F8 abspielen will nicht. Andere Codes aus dem Modul funktionieren (Einfache Codes, die auch anders heißen)
Sub R2PIVOT()
'Declare Variables
Dim PSheet As Worksheet
Dim DSheet As Worksheet
Dim PCache As PivotCache
Dim PTable As PivotTable
Dim PRange As Range
Dim LastRow As Long
Dim LastCol As Long
'Insert a New Blank Worksheet
On Error Resume Next
Worksheets("PivotTable").Delete
Sheets.Add Before:=ActiveSheet
ActiveSheet.Name = "PivotTable"
Application.DisplayAlerts = True
Set PSheet = Worksheets("PivotTable")
Set DSheet = Worksheets("1.Raw Data")
'Define Data Range
LastRow = DSheet.Cells(Rows.Count, 1).End(xlUp).Row
LastCol = DSheet.Cells(1, Columns.Count).End(xlToLeft).Column
Set PRange = DSheet.Cells(1, 1).Resize(LastRow, LastCol)
'Define Pivot Cache
Set PCache = ActiveWorkbook.PivotCaches.Create _
(SourceType:=xlDatabase, SourceData:=PRange). _
CreatePivotTable(TableDestination:=PSheet.Cells(2, 1), _
TableName:="SalesPivotTable")
'Insert Blank Pivot Table
Set PTable = PCache.CreatePivotTable _
(TableDestination:=PSheet.Cells(1, 1), TableName:="SalesPivotTable")
'Insert Row Fields
With ActiveSheet.PivotTables("SalesPivotTable").PivotFields("Ultimate Advertiser")
.Orientation = xlRowField
.Position = 1
End With
'Insert Data Fields
With ActiveSheet.PivotTables("SalesPivotTable").PivotFields("Total Investment")
.Orientation = xlDataField
.Position = 1
.Function = xlSum
.NumberFormat = "#,##0"
.Name = "Total Investment "
End With
With ActiveSheet.PivotTables("SalesPivotTable").PivotFields("Total IG")
.Orientation = xlDataField
.Position = 2
.Function = xlSum
.NumberFormat = "#,##0"
.Name = "Total Instagram "
End With
' Define Calculated Fields
ActiveSheet.PivotTables("SalesPivotTable").CalculatedFields.Add "Share of", _
"='Total IG' /'Total Investment'", True
ActiveSheet.PivotTables("SalesPivotTable").PivotFields("BLUBB").Orientation = _
xlDataField
Columns("D:D").NumberFormat = "##%"
'Format Pivot Table
ActiveSheet.PivotTables("SalesPivotTable").RowAxisLayout xlTabularRow
ActiveSheet.PivotTables("SalesPivotTable").RepeatAllLabels xlRepeatLabels
End Sub
Habe gelesen, dass es an den variablen liegen könnte, aber mein ganzer Code ist zusammengeklaut und ich kann ihn nicht verändern
Außerdem bin ich über den Punkt: ' Define Calculated Fields noch nicht glücklich. Er funktioniert, sieht aber nicht so sauber aus.
Könnt ihr mir hier helfen?
VG
Chris