I have a Pivot Table that gets created using a macro. Is it possible to somehow allow the user to specify which columns (will be columns headed Jan-15 etc) they want to see in the pivot table?

This is my current code:
Option Explicit
Public OverUnderpvt As Variant
Public PFValK As String
Public PFValL As String
Public PFValM As String
Public PFValN As String
Public PFValO As String
Public PFValP As String
Public PFValQ As String
Public PFValR As String
Public PFValS As String
Public PFValT As String
Public PFValU As String
Public PFValV As String
Public lastRow As Long


Sub CreateOverUnderPivotTable()
'
' PvTName Macro
OverUnderpvt = Mid(FCFile, 16, 8) & " OverUnder"

'
' TestForExistingRole Macro
'
Dim sh As Worksheet, flg As Boolean
For Each sh In Worksheets
If sh.Name Like "" & OverUnderpvt & "" Then flg = True: Exit For
Next
If flg = True Then
MsgBox "PivotTable already exists for this date!"
Exit Sub
Else
' CreatePivotTable Macro
'
Sheets.Add.Name = ("" & OverUnderpvt & "")
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"ForecastData!R6C1:R635C22", Version:=xlPivotTableVersion15).CreatePivotTable _
TableDestination:="'" & OverUnderpvt & "'!R5C1", TableName:="PivotTable1", DefaultVersion _
:=xlPivotTableVersion15
Sheets("" & OverUnderpvt & "").Select
Cells(3, 1).Select
With ActiveSheet.PivotTables("PivotTable1").PivotFields("REQUESTED Name")
.Orientation = xlRowField
.Position = 1
.Subtotals _
= Array(False, False, False, False, False, False, False, False, False, False, False, False _
)
End With
With ActiveSheet.PivotTables("PivotTable1").PivotFields("Required Role")
.Orientation = xlRowField
.Position = 2
End With

'PFValK = Worksheets("ForecastData").Range("K6").Text
'ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
"PivotTable1").PivotFields(PFValK), "Sum of " & PFValK, xlSum
PFValL = Worksheets("ForecastData").Range("L6").Text
ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
"PivotTable1").PivotFields(PFValL), "Sum of " & PFValL, xlSum
PFValM = Worksheets("ForecastData").Range("M6").Text
ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
"PivotTable1").PivotFields(PFValM), "Sum of " & PFValM, xlSum
PFValN = Worksheets("ForecastData").Range("N6").Text
ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
"PivotTable1").PivotFields(PFValN), "Sum of " & PFValN, xlSum
PFValO = Worksheets("ForecastData").Range("O6").Text
ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
"PivotTable1").PivotFields(PFValO), "Sum of " & PFValO, xlSum
PFValP = Worksheets("ForecastData").Range("P6").Text
ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
"PivotTable1").PivotFields(PFValP), "Sum of " & PFValP, xlSum
'PFValQ = Worksheets("ForecastData").Range("Q6").Text
'ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
"PivotTable1").PivotFields(PFValQ), "Sum of " & PFValQ, xlSum
'PFValR = Worksheets("ForecastData").Range("R6").Text
'ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
"PivotTable1").PivotFields(PFValR), "Sum of " & PFValR, xlSum
'PFValS = Worksheets("ForecastData").Range("S6").Text
'ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
"PivotTable1").PivotFields(PFValS), "Sum of " & PFValS, xlSum
'PFValT = Worksheets("ForecastData").Range("T6").Text
'ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
"PivotTable1").PivotFields(PFValT), "Sum of " & PFValT, xlSum
'PFValU = Worksheets("ForecastData").Range("U6").Text
'ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
"PivotTable1").PivotFields(PFValU), "Sum of " & PFValU, xlSum
'PFValV = Worksheets("ForecastData").Range("V6").Text
'ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
"PivotTable1").PivotFields(PFValV), "Sum of " & PFValV, xlSum

With ActiveSheet.PivotTables("PivotTable1")
.RowGrand = False
.ColumnGrand = False
.InGridDropZones = True
.RowAxisLayout xlTabularRow
End With

ActiveSheet.Move After:=Sheets(ActiveWorkbook.Sheets.Count)
Application.ScreenUpdating = True ' Enables screen refreshing.

End If
'
' InsertComments Macro
Range("H6").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorAccent1
.TintAndShade = 0.799981688894314
.PatternTintAndShade = 0
End With
ActiveCell.FormulaR1C1 = "Comments"
Range("H6").Select
Selection.Font.Bold = True
Columns("H:H").ColumnWidth = 50
Range("H5:H6").Select
Selection.Merge
'
' ConditionalFormat Macro
'
lastRow = ActiveSheet.Cells(ActiveSheet.Rows.Count, "C").End(xlUp).Row

Range("c7:c" & lastRow).Select
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreaterEqual _
, Formula1:="=22"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlBetween, _
Formula1:="=1", Formula2:="=18"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 5287936
.TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False

'
' CountOverUnder Macro
'
Range("B1").Select
ActiveCell.FormulaR1C1 = "Overs"
Selection.Font.Bold = True
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Range("C1").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(R[6]C:R[" & lastRow & "]C, "">=22"")"

Range("B2").Select
ActiveCell.FormulaR1C1 = "Unders"
Selection.Font.Bold = True
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Range("C2").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(R[5]C:R[" & lastRow & "]C, ""<=18"") - COUNTIF(R[5]C:R[" & lastRow & "]C, ""<1"")"


'Range("A1").Select
'
' CloseWorkbook Macro
'
'Workbooks(FCFile).Close


End Sub


At present to change columns used I would have to go in and remove or comment out the appropriate lines.