Code:
Sub PivotTables()
'
' Pivot Table for CW LF MS US Macro
' ctrl-z
'
'
With Application
.EnableEvents = False
.ScreenUpdating = False
End With
Dim LR As Long
Dim cl As Range
Dim PT As pivottable
Dim PI As PivotItem
Dim PF As PivotField
Dim StartDate As String
Dim EndDate As String
Dim OutApp As Object
Dim OutMail As Object
Dim Subj As String
Dim i, LastRow
Dim answer As Integer
Dim Total As Long
'*******************FILERTERING CODE DOWN TO OUR STATES******************************
Sheets("CW").Select
LastRow = Range("A" & Rows.Count).End(xlUp).Row
For i = LastRow To 1 Step -1
If Cells(i, "A").Value = "AZ" _
Or Cells(i, "A").Value = "CA" _
Or Cells(i, "A").Value = "NV" Then
Cells(i, "A").EntireRow.Delete
End If
Next
Sheets("LF").Select
LastRow = Range("A" & Rows.Count).End(xlUp).Row
For i = LastRow To 1 Step -1
If Cells(i, "A").Value = "AL" _
Or Cells(i, "A").Value = "FL" _
Or Cells(i, "A").Value = "GA" _
Or Cells(i, "A").Value = "MS" _
Or Cells(i, "A").Value = "NY" _
Or Cells(i, "A").Value = "PA" _
Then
Cells(i, "A").EntireRow.Delete
End If
Next
Sheets("MS").Select
LastRow = Range("A" & Rows.Count).End(xlUp).Row
For i = LastRow To 1 Step -1
If Cells(i, "A").Value = "NC" _
Or Cells(i, "A").Value = "SC" _
Then
Cells(i, "A").EntireRow.Delete
End If
Next
'********************DATE RANGE CODE******************************************************************
Sheets("Totals").Select
Cells.Select
Selection.Delete Shift:=xlUp
StartDate = InputBox("What is the Start Date?", "Choose Start Date", "Enter starting Date Here yyyymmdd")
EndDate = InputBox("What is the End Date", "Choose End Date", "Enter ending Date Here yyyymmdd")
'*******************MS PIVOT TABLE CODE**************************************************************
Sheets("CW").Select
Cells.Select
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"CW!R1C1:R1048576C8", Version:=xlPivotTableVersion14).CreatePivotTable _
TableDestination:="Totals!R3C1", TableName:="CW", DefaultVersion _
:=xlPivotTableVersion14
Sheets("Totals").Select
Cells(3, 1).Select
With ActiveSheet.PivotTables("CW").PivotFields("Stage")
.Orientation = xlRowField
.Position = 1
End With
With ActiveSheet.PivotTables("CW").PivotFields("Appointment")
.Orientation = xlRowField
.Position = 2
End With
ActiveSheet.PivotTables("CW").AddDataField ActiveSheet.PivotTables("CW"). _
PivotFields("Stage"), "Count of Stage", xlCount
With ActiveSheet.PivotTables("CW").PivotFields("Stage")
.Orientation = xlRowField
.Position = 1
End With
ActiveSheet.PivotTables("CW").PivotFields("Count of Stage").Caption = " "
ActiveSheet.PivotTables("CW").CompactLayoutRowHeader = "CW"
'************lf pivot table Code*********************************************************************
Sheets("LF").Select
Cells.Select
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"LF!R1C1:R1048576C8", Version:=xlPivotTableVersion14).CreatePivotTable _
TableDestination:="Totals!R3C4", TableName:="LF", DefaultVersion _
:=xlPivotTableVersion14
Sheets("Totals").Select
Cells(3, 4).Select
With ActiveSheet.PivotTables("LF").PivotFields("STAGE")
.Orientation = xlRowField
.Position = 1
End With
With ActiveSheet.PivotTables("LF").PivotFields("APPOINTMENT")
.Orientation = xlRowField
.Position = 2
End With
ActiveSheet.PivotTables("LF").AddDataField ActiveSheet.PivotTables("LF"). _
PivotFields("STAGE"), "Count of STAGE", xlCount
With ActiveSheet.PivotTables("LF").PivotFields("STAGE")
.Orientation = xlRowField
.Position = 1
End With
ActiveSheet.PivotTables("LF").PivotFields("Count of Stage").Caption = " "
ActiveSheet.PivotTables("LF").CompactLayoutRowHeader = "LF"
'*************************MS PIVOT TABLE CODE***********************************************************
Sheets("MS").Select
Cells.Select
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"MS!R1C1:R1048576C8", Version:=xlPivotTableVersion14).CreatePivotTable _
TableDestination:="Totals!R3C7", TableName:="MS", DefaultVersion _
:=xlPivotTableVersion14
Sheets("Totals").Select
Cells(3, 7).Select
With ActiveSheet.PivotTables("MS").PivotFields("Stage")
.Orientation = xlRowField
.Position = 1
End With
With ActiveSheet.PivotTables("MS").PivotFields("Appointment")
.Orientation = xlRowField
.Position = 2
End With
ActiveSheet.PivotTables("MS").AddDataField ActiveSheet.PivotTables("MS"). _
PivotFields("Stage"), "Count of Stage", xlCount
With ActiveSheet.PivotTables("MS").PivotFields("Stage")
.Orientation = xlRowField
.Position = 1
End With
ActiveSheet.PivotTables("MS").PivotFields("Count of Stage").Caption = " "
ActiveSheet.PivotTables("MS").CompactLayoutRowHeader = "MS"
'************************US PIVOTTABLE CODE***************************************************************
Sheets("US").Select
Cells.Select
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"US!R1C1:R1048576C8", Version:=xlPivotTableVersion14).CreatePivotTable _
TableDestination:="Totals!R3C10", TableName:="US", DefaultVersion _
:=xlPivotTableVersion14
Sheets("Totals").Select
Cells(3, 10).Select
With ActiveSheet.PivotTables("US").PivotFields("Stage")
.Orientation = xlRowField
.Position = 1
End With
With ActiveSheet.PivotTables("US").PivotFields("Appointment")
.Orientation = xlRowField
.Position = 2
End With
ActiveSheet.PivotTables("US").AddDataField ActiveSheet.PivotTables("US"). _
PivotFields("Stage"), "Count of Stage", xlCount
With ActiveSheet.PivotTables("US").PivotFields("Stage")
.Orientation = xlRowField
.Position = 1
End With
ActiveSheet.PivotTables("US").PivotFields("Count of Stage").Caption = " "
ActiveSheet.PivotTables("US").CompactLayoutRowHeader = "US"
'************************ Sort and filter code************************************************************
For Each PT In ActiveSheet.PivotTables
Set PF = PT.PivotFields("Stage")
For Each PI In PF.PivotItems
If Not PI.Name = "{blank}" Then
If PI.Value = "BSP" Or _
PI.Value = "BWF" Or _
PI.Value = "CAN" Or _
PI.Value = "CTC" Or _
PI.Value = "DSP" Or _
PI.Value = "LNP" Or _
PI.Value = "MSP" Or _
PI.Value = "PSP" Or _
PI.Value = "TC" Or _
PI.Value = "TSP" Or _
PI.Value = "USP" Or _
PI.Value = "VSH" Or _
PI.Value = "VSP" Then
Range("A4").Select
ActiveSheet.PivotTables("CW").PivotSelect "BSP", xlDataAndLabel + xlFirstRow, _
True
ActiveSheet.PivotTables("MS").TableStyle2 = "PivotStyleMedium9"
ActiveSheet.PivotTables("CW").InnerDetail = "Appointment"
Selection.ShowDetail = True
ActiveSheet.PivotTables("CW").PivotSelect "BSP", xlDataAndLabel + xlFirstRow, _
True
Range("D4").Select
ActiveSheet.PivotTables("LF").InnerDetail = "Appointment"
Selection.ShowDetail = True
Range("G4").Select
ActiveSheet.PivotTables("MS").InnerDetail = "Appointment"
Selection.ShowDetail = True
Range("j4").Select
ActiveSheet.PivotTables("US").InnerDetail = "Appointment"
Selection.ShowDetail = True
PI.Visible = True
PI.ShowDetail = True
Else
PI.Visible = False
End If
End If
Next PI
Next PT
ActiveSheet.PivotTables("CW").PivotFields("Stage").Subtotals = Array(True, _
False, False, False, False, False, False, False, False, False, False, False)
ActiveSheet.PivotTables("CW").PivotFields("Appointment").Subtotals = Array( _
True, False, False, False, False, False, False, False, False, False, False, False)
ActiveSheet.PivotTables("LF").PivotFields("Stage").Subtotals = Array(True, _
False, False, False, False, False, False, False, False, False, False, False)
ActiveSheet.PivotTables("LF").PivotFields("Appointment").Subtotals = Array( _
True, False, False, False, False, False, False, False, False, False, False, False)
ActiveSheet.PivotTables("MS").PivotFields("Stage").Subtotals = Array(True, _
False, False, False, False, False, False, False, False, False, False, False)
ActiveSheet.PivotTables("MS").PivotFields("Appointment").Subtotals = Array( _
True, False, False, False, False, False, False, False, False, False, False, False)
ActiveSheet.PivotTables("US").PivotFields("Stage").Subtotals = Array(True, _
False, False, False, False, False, False, False, False, False, False, False)
ActiveSheet.PivotTables("US").PivotFields("Appointment").Subtotals = Array( _
True, False, False, False, False, False, False, False, False, False, False, False)
For Each PT In ActiveSheet.PivotTables
Set PF = PT.PivotFields("Appointment")
For Each PI In PF.PivotItems
If Not PI.Name = "{blank}" Then
If _
PI.Value >= StartDate And _
PI.Value <= EndDate Then
PI.Visible = True
Else
PI.Visible = False
End If
End If
Next PI
Next PT
ActiveSheet.PivotTables("US").ShowDrillIndicators = False
ActiveSheet.PivotTables("US").TableStyle2 = "PivotStyleMedium9"
ActiveSheet.PivotTables("CW").ShowDrillIndicators = False
ActiveSheet.PivotTables("CW").TableStyle2 = "PivotStyleMedium9"
ActiveSheet.PivotTables("LF").ShowDrillIndicators = False
ActiveSheet.PivotTables("LF").TableStyle2 = "PivotStyleMedium9"
ActiveSheet.PivotTables("MS").ShowDrillIndicators = False
ActiveSheet.PivotTables("MS").TableStyle2 = "PivotStyleMedium9"
ActiveSheet.PivotTables("MS").ShowDrillIndicators = False
ActiveSheet.PivotTables("MS").TableStyle2 = "PivotStyleMedium9"
Range("A3").Select
With ActiveSheet.PivotTables("CW")
.ColumnGrand = False
.RowGrand = False
End With
Range("D3").Select
With ActiveSheet.PivotTables("LF")
.ColumnGrand = False
.RowGrand = False
End With
Range("G3").Select
With ActiveSheet.PivotTables("MS")
.ColumnGrand = False
.RowGrand = False
End With
With ActiveSheet.PivotTables("US")
.ColumnGrand = False
.RowGrand = False
End With
End Sub
Bookmarks