Cash Flow Forecast - Code
Instructions create spreadsheet automatically
Rather than providing an Excel spreadsheet to download, that would inevitably create security problems, I have provided some code to re-create the spreadsheet. It should be able to be copied and pasted into a blank Excel workbook's Visual Basic editor. Once pasted into the VBA editor the code can be run to reproduce the spreadsheet.
You will need to edit the data on the Daily worksheet to insert and delete rows as needed. If inserting a row, copy the formulae from an existing row and paste over the new row. Totals and data on the Summary worksheet should not need any amendment.
- Open a blank Excel workbook
We need the Developer tab, which isn't displayed by default. If it isn't displayed you can add it to the ribbon by
- On the File tab, go to Options > Customize Ribbon.
- Under Customize the Ribbon and under Main Tabs, select the Developer check box.
- Select 'Developer' tab
- Select 'Visual Basic'
- Right-click on 'Microsoft Excel Objects'
- Select 'Insert' > 'Module'
- Paste the code from below into the right-hand pane.
- With the cursor anywhere in the code, click the 'Run' symbol (small green arrow)
The spreadsheet should now be created in the background. When complete, close the 'Visual Basic' window without saving the code.
Now save the worksheet.
You are now ready to enter your own data...
Sub CreateCashFlowForecast()
Sheets("Sheet1").Select
Sheets("Sheet1").Name = "Daily"
Range("B2").Select
ActiveCell.FormulaR1C1 = "Description"
Columns("B:B").Select
Selection.ColumnWidth = 20.45
Range("C2").Select
ActiveCell.FormulaR1C1 = "Amount"
Range("D2").Select
ActiveCell.FormulaR1C1 = "Repeat"
Range("E2").Select
ActiveCell.FormulaR1C1 = "Period"
Range("F2").Select
ActiveCell.FormulaR1C1 = "Base Date"
Range("H2").Select
ActiveCell.FormulaR1C1 = "=TODAY()"
Range("I2").Select
ActiveCell.FormulaR1C1 = "=RC[-1]+1"
Range("I2").Select
Selection.AutoFill Destination:=Range("I2:BR2"), Type:=xlFillDefault
Range("I2:BR2").Select
Columns("H:BR").Select
Range("BR1").Activate
Columns("H:BR").EntireColumn.AutoFit
Selection.NumberFormat = "#,##0.00"
ActiveWindow.ScrollColumn = 59
ActiveWindow.ScrollColumn = 58
ActiveWindow.ScrollColumn = 57
ActiveWindow.ScrollColumn = 55
ActiveWindow.ScrollColumn = 53
ActiveWindow.ScrollColumn = 50
ActiveWindow.ScrollColumn = 49
ActiveWindow.ScrollColumn = 48
ActiveWindow.ScrollColumn = 46
ActiveWindow.ScrollColumn = 42
ActiveWindow.ScrollColumn = 40
ActiveWindow.ScrollColumn = 37
ActiveWindow.ScrollColumn = 34
ActiveWindow.ScrollColumn = 33
ActiveWindow.ScrollColumn = 30
ActiveWindow.ScrollColumn = 29
ActiveWindow.ScrollColumn = 26
ActiveWindow.ScrollColumn = 25
ActiveWindow.ScrollColumn = 24
ActiveWindow.ScrollColumn = 23
ActiveWindow.ScrollColumn = 22
ActiveWindow.ScrollColumn = 20
ActiveWindow.ScrollColumn = 19
ActiveWindow.ScrollColumn = 18
ActiveWindow.ScrollColumn = 17
ActiveWindow.ScrollColumn = 15
ActiveWindow.ScrollColumn = 14
ActiveWindow.ScrollColumn = 13
ActiveWindow.ScrollColumn = 12
ActiveWindow.ScrollColumn = 11
ActiveWindow.ScrollColumn = 10
ActiveWindow.ScrollColumn = 9
ActiveWindow.ScrollColumn = 8
ActiveWindow.ScrollColumn = 7
ActiveWindow.ScrollColumn = 6
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 1
Rows("2:2").Select
Selection.NumberFormat = "m/d/yyyy"
Range("A2:BR2").Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
Selection.Borders(xlEdgeLeft).LineStyle = xlNone
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
Selection.Borders(xlEdgeRight).LineStyle = xlNone
Selection.Borders(xlInsideVertical).LineStyle = xlNone
Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
Columns("A:A").Select
Selection.Font.Bold = True
Columns("C:C").Select
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Selection.NumberFormat = "#,##0.00"
Columns("D:F").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Columns("D:D").Select
Selection.NumberFormat = "0"
Columns("F:F").Select
With Selection
.NumberFormat = "m/d/yyyy"
.EntireColumn.AutoFit
End With
Range("A4").Select
ActiveCell.FormulaR1C1 = "Opening Balance"
Range("A6").Select
ActiveCell.FormulaR1C1 = "Income"
Range("B7").Select
ActiveCell.FormulaR1C1 = "Salary"
Range("C7").Select
ActiveCell.FormulaR1C1 = "2500"
Range("D7").Select
ActiveCell.FormulaR1C1 = "1"
Range("E7").Select
ActiveCell.FormulaR1C1 = "M"
Range("F7").Select
ActiveCell.FormulaR1C1 = "12/28/2022"
Range("H7").Select
ActiveCell.FormulaR1C1 = _
"=IF(QUOTIENT(DATEDIF(RC6, R2C, RC5),RC4)>QUOTIENT(DATEDIF(RC6, R2C-1, RC5),RC4),RC3,"""")"
Range("H8").Select
Range("A9").Select
ActiveCell.FormulaR1C1 = "Standing Orders"
Range("B10").Select
ActiveCell.FormulaR1C1 = "Rent"
Range("C10").Select
ActiveCell.FormulaR1C1 = "-1500"
Range("D10").Select
ActiveCell.FormulaR1C1 = "1"
Range("E10").Select
ActiveCell.FormulaR1C1 = "M"
Range("F10").Select
ActiveCell.FormulaR1C1 = "8/1/2022"
Range("B11").Select
ActiveCell.FormulaR1C1 = "Council Tax"
Range("C11").Select
ActiveCell.FormulaR1C1 = "-200"
Range("D11").Select
ActiveCell.FormulaR1C1 = "1"
Range("E11").Select
ActiveCell.FormulaR1C1 = "M"
Range("F11").Select
ActiveCell.FormulaR1C1 = "4/15/2022"
Range("A13").Select
ActiveCell.FormulaR1C1 = "Direct Debits"
Range("B14").Select
ActiveCell.FormulaR1C1 = "Broadband"
Range("C14").Select
ActiveCell.FormulaR1C1 = "-40"
Range("D14").Select
ActiveCell.FormulaR1C1 = "1"
Range("E14").Select
ActiveCell.FormulaR1C1 = "M"
Range("F14").Select
ActiveCell.FormulaR1C1 = "3/10/2022"
Range("A16").Select
ActiveCell.FormulaR1C1 = "Regular Card Payments"
Range("B17").Select
ActiveCell.FormulaR1C1 = "Newsagent"
Range("C17").Select
ActiveCell.FormulaR1C1 = "-17.5"
Range("D17").Select
ActiveCell.FormulaR1C1 = "28"
Range("E17").Select
ActiveCell.FormulaR1C1 = "D"
Range("F17").Select
ActiveCell.FormulaR1C1 = "4/4/2021"
Range("A19").Select
ActiveCell.FormulaR1C1 = "Other Regular Payments"
Range("B20").Select
ActiveCell.FormulaR1C1 = "Car Service"
Range("C20").Select
ActiveCell.FormulaR1C1 = "-250"
Range("D20").Select
ActiveCell.FormulaR1C1 = "1"
Range("E20").Select
ActiveCell.FormulaR1C1 = "Y"
Range("F20").Select
ActiveCell.FormulaR1C1 = "5/15/2021"
Range("B21").Select
ActiveCell.FormulaR1C1 = "Car Insurance"
Range("C21").Select
ActiveCell.FormulaR1C1 = "-300"
Range("D21").Select
ActiveCell.FormulaR1C1 = "1"
Range("E21").Select
ActiveCell.FormulaR1C1 = "Y"
Range("F21").Select
ActiveCell.FormulaR1C1 = "8/20/2022"
Range("B22").Select
ActiveCell.FormulaR1C1 = "Car Tax"
Range("C22").Select
ActiveCell.FormulaR1C1 = "-30"
Range("D22").Select
ActiveCell.FormulaR1C1 = "1"
Range("E22").Select
ActiveCell.FormulaR1C1 = "Y"
Range("F22").Select
ActiveCell.FormulaR1C1 = "9/1/2021"
Range("B23").Select
ActiveCell.FormulaR1C1 = "Groceries"
Range("C23").Select
ActiveCell.FormulaR1C1 = "-150"
Range("D23").Select
ActiveCell.FormulaR1C1 = "28"
Range("E23").Select
ActiveCell.FormulaR1C1 = "D"
Range("D23").Select
ActiveCell.FormulaR1C1 = "14"
Range("F23").Select
ActiveCell.FormulaR1C1 = "9/27/2021"
Range("B25").Select
ActiveCell.FormulaR1C1 = "Pocket Money"
Range("C25").Select
ActiveCell.FormulaR1C1 = "-100"
Range("D25").Select
ActiveCell.FormulaR1C1 = "7"
Range("E25").Select
ActiveCell.FormulaR1C1 = "D"
Range("F25").Select
ActiveCell.FormulaR1C1 = "1/16/2022"
Range("A28").Select
ActiveCell.FormulaR1C1 = "Closing Balance"
Range("H28").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "=SUM(R[-24]C:R[-1]C)"
Range("H28").Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
Selection.Borders(xlEdgeLeft).LineStyle = xlNone
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
Selection.Borders(xlEdgeRight).LineStyle = xlNone
Selection.Borders(xlInsideVertical).LineStyle = xlNone
Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
Range("H7").Select
Selection.Copy
Range("H10:H11").Select
ActiveSheet.Paste
Range("H14").Select
ActiveSheet.Paste
Range("H17").Select
ActiveSheet.Paste
Range("H20:H23").Select
ActiveSheet.Paste
Range("H25").Select
ActiveSheet.Paste
Range("H4").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "2000"
Range("I4").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "=R[24]C[-1]"
Range("H7").Select
Selection.AutoFill Destination:=Range("H7:I7"), Type:=xlFillDefault
Range("H7:I7").Select
Range("H10:H11").Select
Selection.AutoFill Destination:=Range("H10:I11"), Type:=xlFillDefault
Range("H10:I11").Select
Range("H14").Select
Selection.AutoFill Destination:=Range("H14:I14"), Type:=xlFillDefault
Range("H14:I14").Select
Range("H17").Select
Selection.AutoFill Destination:=Range("H17:I17"), Type:=xlFillDefault
Range("H17:I17").Select
Range("H20:H23").Select
Selection.AutoFill Destination:=Range("H20:I23"), Type:=xlFillDefault
Range("H20:I23").Select
Range("H25").Select
Selection.AutoFill Destination:=Range("H25:I25"), Type:=xlFillDefault
Range("H25:I25").Select
Range("H28").Select
Selection.AutoFill Destination:=Range("H28:I28"), Type:=xlFillDefault
Range("H28:I28").Select
Range("I4:I28").Select
Selection.AutoFill Destination:=Range("I4:BR28"), Type:=xlFillDefault
Range("I4:BR28").Select
ActiveWindow.ScrollColumn = 51
ActiveWindow.ScrollColumn = 50
ActiveWindow.ScrollColumn = 49
ActiveWindow.ScrollColumn = 48
ActiveWindow.ScrollColumn = 47
ActiveWindow.ScrollColumn = 46
ActiveWindow.ScrollColumn = 45
ActiveWindow.ScrollColumn = 44
ActiveWindow.ScrollColumn = 43
ActiveWindow.ScrollColumn = 42
ActiveWindow.ScrollColumn = 41
ActiveWindow.ScrollColumn = 40
ActiveWindow.ScrollColumn = 39
ActiveWindow.ScrollColumn = 38
ActiveWindow.ScrollColumn = 37
ActiveWindow.ScrollColumn = 36
ActiveWindow.ScrollColumn = 35
ActiveWindow.ScrollColumn = 34
ActiveWindow.ScrollColumn = 33
ActiveWindow.ScrollColumn = 32
ActiveWindow.ScrollColumn = 31
ActiveWindow.ScrollColumn = 30
ActiveWindow.ScrollColumn = 29
ActiveWindow.ScrollColumn = 27
ActiveWindow.ScrollColumn = 26
ActiveWindow.ScrollColumn = 25
ActiveWindow.ScrollColumn = 23
ActiveWindow.ScrollColumn = 22
ActiveWindow.ScrollColumn = 20
ActiveWindow.ScrollColumn = 19
ActiveWindow.ScrollColumn = 18
ActiveWindow.ScrollColumn = 17
ActiveWindow.ScrollColumn = 16
ActiveWindow.ScrollColumn = 15
ActiveWindow.ScrollColumn = 14
ActiveWindow.ScrollColumn = 13
ActiveWindow.ScrollColumn = 12
ActiveWindow.ScrollColumn = 11
ActiveWindow.ScrollColumn = 10
ActiveWindow.ScrollColumn = 9
ActiveWindow.ScrollColumn = 8
ActiveWindow.ScrollColumn = 7
ActiveWindow.ScrollColumn = 6
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 1
Range("H28:BR28").Select
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, _
Formula1:="=0"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Font
.Color = -16752384
.TintAndShade = 0
End With
With Selection.FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 13561798
.TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlLess, _
Formula1:="=0"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Font
.Color = -16383844
.TintAndShade = 0
End With
With Selection.FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 13551615
.TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False
ActiveWindow.ScrollColumn = 50
ActiveWindow.ScrollColumn = 49
ActiveWindow.ScrollColumn = 48
ActiveWindow.ScrollColumn = 46
ActiveWindow.ScrollColumn = 45
ActiveWindow.ScrollColumn = 44
ActiveWindow.ScrollColumn = 43
ActiveWindow.ScrollColumn = 41
ActiveWindow.ScrollColumn = 40
ActiveWindow.ScrollColumn = 39
ActiveWindow.ScrollColumn = 36
ActiveWindow.ScrollColumn = 35
ActiveWindow.ScrollColumn = 33
ActiveWindow.ScrollColumn = 32
ActiveWindow.ScrollColumn = 30
ActiveWindow.ScrollColumn = 29
ActiveWindow.ScrollColumn = 27
ActiveWindow.ScrollColumn = 26
ActiveWindow.ScrollColumn = 25
ActiveWindow.ScrollColumn = 24
ActiveWindow.ScrollColumn = 23
ActiveWindow.ScrollColumn = 21
ActiveWindow.ScrollColumn = 19
ActiveWindow.ScrollColumn = 16
ActiveWindow.ScrollColumn = 15
ActiveWindow.ScrollColumn = 14
ActiveWindow.ScrollColumn = 13
ActiveWindow.ScrollColumn = 12
ActiveWindow.ScrollColumn = 11
ActiveWindow.ScrollColumn = 10
ActiveWindow.ScrollColumn = 9
ActiveWindow.ScrollColumn = 8
ActiveWindow.ScrollColumn = 7
ActiveWindow.ScrollColumn = 6
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 1
Range("G3").Select
ActiveWindow.FreezePanes = True
Range("H4").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorAccent5
.TintAndShade = 0.399975585192419
.PatternTintAndShade = 0
End With
Range("H2").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorAccent5
.TintAndShade = 0.399975585192419
.PatternTintAndShade = 0
End With
Sheets.Add After:=ActiveSheet
Sheets("Sheet2").Select
Sheets("Sheet2").Name = "Summary"
Range("A3").Select
ActiveCell.FormulaR1C1 = "Week-ending"
Range("C3").Select
ActiveCell.FormulaR1C1 = "=Daily!R[-1]C[5]-1"
Range("D3").Select
ActiveCell.FormulaR1C1 = "=RC[-1]+7"
Range("D3").Select
Selection.AutoFill Destination:=Range("D3:L3"), Type:=xlFillDefault
Range("D3:L3").Select
Columns("D:L").Select
Columns("D:L").EntireColumn.AutoFit
Sheets("Daily").Select
Range("H2:BR2").Select
ActiveWorkbook.Names.Add Name:="DateHeadings", RefersToR1C1:= _
"=Daily!R2C8:R2C70"
ActiveWorkbook.Names("DateHeadings").Comment = ""
ActiveWindow.ScrollColumn = 57
ActiveWindow.ScrollColumn = 56
ActiveWindow.ScrollColumn = 55
ActiveWindow.ScrollColumn = 54
ActiveWindow.ScrollColumn = 52
ActiveWindow.ScrollColumn = 50
ActiveWindow.ScrollColumn = 45
ActiveWindow.ScrollColumn = 40
ActiveWindow.ScrollColumn = 37
ActiveWindow.ScrollColumn = 35
ActiveWindow.ScrollColumn = 33
ActiveWindow.ScrollColumn = 31
ActiveWindow.ScrollColumn = 28
ActiveWindow.ScrollColumn = 27
ActiveWindow.ScrollColumn = 26
ActiveWindow.ScrollColumn = 22
ActiveWindow.ScrollColumn = 20
ActiveWindow.ScrollColumn = 19
ActiveWindow.ScrollColumn = 17
ActiveWindow.ScrollColumn = 15
ActiveWindow.ScrollColumn = 12
ActiveWindow.ScrollColumn = 9
ActiveWindow.ScrollColumn = 7
Range("H28:BR28").Select
ActiveWorkbook.Names.Add Name:="ClosingBalance", RefersToR1C1:= _
"=Daily!R28C8:R28C70"
ActiveWorkbook.Names("ClosingBalance").Comment = ""
ActiveWindow.ScrollColumn = 57
ActiveWindow.ScrollColumn = 56
ActiveWindow.ScrollColumn = 54
ActiveWindow.ScrollColumn = 53
ActiveWindow.ScrollColumn = 52
ActiveWindow.ScrollColumn = 51
ActiveWindow.ScrollColumn = 49
ActiveWindow.ScrollColumn = 44
ActiveWindow.ScrollColumn = 43
ActiveWindow.ScrollColumn = 41
ActiveWindow.ScrollColumn = 39
ActiveWindow.ScrollColumn = 36
ActiveWindow.ScrollColumn = 33
ActiveWindow.ScrollColumn = 32
ActiveWindow.ScrollColumn = 30
ActiveWindow.ScrollColumn = 29
ActiveWindow.ScrollColumn = 28
ActiveWindow.ScrollColumn = 26
ActiveWindow.ScrollColumn = 24
ActiveWindow.ScrollColumn = 23
ActiveWindow.ScrollColumn = 22
ActiveWindow.ScrollColumn = 21
ActiveWindow.ScrollColumn = 20
ActiveWindow.ScrollColumn = 19
ActiveWindow.ScrollColumn = 18
ActiveWindow.ScrollColumn = 17
ActiveWindow.ScrollColumn = 16
ActiveWindow.ScrollColumn = 15
ActiveWindow.ScrollColumn = 14
ActiveWindow.ScrollColumn = 13
ActiveWindow.ScrollColumn = 12
ActiveWindow.ScrollColumn = 11
ActiveWindow.ScrollColumn = 10
ActiveWindow.ScrollColumn = 9
ActiveWindow.ScrollColumn = 8
ActiveWindow.ScrollColumn = 7
Range("H28:N28").Select
ActiveWorkbook.Names.Add Name:="Week1", RefersToR1C1:="=Daily!R28C8:R28C14"
ActiveWorkbook.Names("Week1").Comment = ""
Range("O28:U28").Select
ActiveWorkbook.Names.Add Name:="Week2", RefersToR1C1:= _
"=Daily!R28C15:R28C21"
ActiveWorkbook.Names("Week2").Comment = ""
Range("V28:AB28").Select
ActiveWorkbook.Names.Add Name:="Week3", RefersToR1C1:= _
"=Daily!R28C22:R28C28"
ActiveWorkbook.Names("Week3").Comment = ""
Range("AC28:AI28").Select
ActiveWorkbook.Names.Add Name:="Week4", RefersToR1C1:= _
"=Daily!R28C29:R28C35"
ActiveWorkbook.Names("Week4").Comment = ""
Range("AJ28:AP28").Select
ActiveWorkbook.Names.Add Name:="Week5", RefersToR1C1:= _
"=Daily!R28C36:R28C42"
ActiveWorkbook.Names("Week5").Comment = ""
Range("AQ28:AW28").Select
ActiveWorkbook.Names.Add Name:="Week6", RefersToR1C1:= _
"=Daily!R28C43:R28C49"
ActiveWorkbook.Names("Week6").Comment = ""
Range("AX28:BD28").Select
ActiveWorkbook.Names.Add Name:="Week7", RefersToR1C1:= _
"=Daily!R28C50:R28C56"
ActiveWorkbook.Names("Week7").Comment = ""
Range("BE28:BK28").Select
ActiveWorkbook.Names.Add Name:="Week8", RefersToR1C1:= _
"=Daily!R28C57:R28C63"
ActiveWorkbook.Names("Week8").Comment = ""
Range("BL28:BR28").Select
ActiveWorkbook.Names.Add Name:="Week9", RefersToR1C1:= _
"=Daily!R28C64:R28C70"
ActiveWorkbook.Names("Week9").Comment = ""
Range("G3").Select
Sheets("Summary").Select
Rows("1:1").Select
Selection.Insert Shift:=xlDown
Selection.Delete Shift:=xlUp
Selection.Delete Shift:=xlUp
Range("D4").Select
ActiveCell.FormulaR1C1 = _
"=INDEX(ClosingBalance,1,MATCH(R[-2]C,DateHeadings,0))"
Range("A4").Select
ActiveCell.FormulaR1C1 = "Closing Balance"
Range("D4").Select
Selection.AutoFill Destination:=Range("D4:L4"), Type:=xlFillDefault
Range("D4:L4").Select
Range("A6").Select
ActiveCell.FormulaR1C1 = "Minimum Balance"
Range("D6").Select
ActiveCell.FormulaR1C1 = "=MIN(Week1)"
Range("D6").Select
Selection.Copy
Range("E6:L6").Select
ActiveSheet.Paste
Range("E6").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "=MIN(Week2)"
Range("F6").Select
ActiveCell.FormulaR1C1 = "=MIN(Week3)"
Range("G6").Select
ActiveCell.FormulaR1C1 = "=MIN(Week4)"
Range("H6").Select
ActiveCell.FormulaR1C1 = "=MIN(Week5)"
Range("I6").Select
ActiveCell.FormulaR1C1 = "=MIN(Week6)"
Range("J6").Select
ActiveCell.FormulaR1C1 = "=MIN(Week7)"
Range("K6").Select
ActiveCell.FormulaR1C1 = "=MIN(Week8)"
Range("L6").Select
ActiveCell.FormulaR1C1 = "=MIN(Week9)"
Range("D4:L6").Select
Selection.NumberFormat = "#,##0.00"
Range("C2:L2").Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
Selection.Borders(xlEdgeLeft).LineStyle = xlNone
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
Selection.Borders(xlEdgeRight).LineStyle = xlNone
Selection.Borders(xlInsideVertical).LineStyle = xlNone
Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
Range("D4:L4").Select
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, _
Formula1:="=0"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Font
.Color = -16752384
.TintAndShade = 0
End With
With Selection.FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 13561798
.TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlLess, _
Formula1:="=0"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Font
.Color = -16383844
.TintAndShade = 0
End With
With Selection.FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 13551615
.TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False
Range("D6:L6").Select
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, _
Formula1:="=0"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Font
.Color = -16752384
.TintAndShade = 0
End With
With Selection.FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 13561798
.TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlLess, _
Formula1:="=0"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Font
.Color = -16383844
.TintAndShade = 0
End With
With Selection.FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 13551615
.TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False
Columns("C:C").Select
Columns("C:C").EntireColumn.AutoFit
Range("C4").Select
Sheets("Daily").Select
Columns("F:F").Select
Columns("F:F").EntireColumn.AutoFit
Range("H4").Select
End Sub



