Sub Update_Figures()
Dim sWb As Workbook, tWb As Workbook
Dim sWs As Worksheet, tWs As Worksheet
Dim sLR As Long
Dim cNO As Long
Dim FindMonth As String
With Application
.Calculation = xlCalculationManual
.ScreenUpdating = False
.CutCopyMode = False
End With
FindMonth = MonthName(Month(Date) - 1, True)
Set sWb = Workbooks("SOURCEDATAEXAMPLE.xls")
Set sWs = sWb.Sheets("SALESEXPORT")
Set tWb = ThisWorkbook
Set tWs = tWb.Sheets("2013")
sWs.Activate
With sWs
sLR = .Cells.Find("*", .Cells(.Rows.Count, .Columns.Count), SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
.Range("A1:T" & sLR).AutoFilter Field:=1, Criteria1:="AREA 1", _
Operator:=xlOr, Criteria2:="AREA 2"
.Range("A1:T" & sLR).AutoFilter Field:=4, Criteria1:="SALES"
.Range("A1:T" & sLR).AutoFilter Field:=6, Criteria1:="2013"
.Range(.Cells(2, "C"), .Cells(sLR, "C")).SpecialCells(xlCellTypeVisible).Copy
tWs.Range("B3").PasteSpecial xlPasteValues
.Range(.Cells(2, "B"), .Cells(sLR, "B")).SpecialCells(xlCellTypeVisible).Copy
tWs.Range("A3").PasteSpecial xlPasteValues
.Range(.Cells(2, "G"), .Cells(sLR, "R")).SpecialCells(xlCellTypeVisible).Copy
tWs.Range("C3").PasteSpecial xlPasteValues
.ShowAllData
End With
Set tWs = tWb.Sheets("2014")
With sWs
cNO = .Rows(1).Find(FindMonth, LookAt:=xlWhole).Column
sLR = .Cells.Find("*", .Cells(.Rows.Count, .Columns.Count), SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
.Range("A1:T" & sLR).AutoFilter Field:=1, Criteria1:="AREA 1", _
Operator:=xlOr, Criteria2:="AREA 2"
.Range("A1:T" & sLR).AutoFilter Field:=4, Criteria1:="SALES"
.Range("A1:T" & sLR).AutoFilter Field:=6, Criteria1:="2014"
.Range(.Cells(2, "C"), .Cells(sLR, "C")).SpecialCells(xlCellTypeVisible).Copy
tWs.Range("B3").PasteSpecial xlPasteValues
.Range(.Cells(2, "B"), .Cells(sLR, "B")).SpecialCells(xlCellTypeVisible).Copy
tWs.Range("A3").PasteSpecial xlPasteValues
.Range(.Cells(2, "G"), .Cells(sLR, cNO)).SpecialCells(xlCellTypeVisible).Copy
tWs.Range("C3").PasteSpecial xlPasteValues
.ShowAllData
End With
tWs.Activate
Range(Cells(1, "A"), Cells(1664, "A")).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
With Application
.Calculation = xlCalculationAutomatic
.ScreenUpdating = True
.CutCopyMode = False
End With
End Sub
Bookmarks