Private Sub Overview(exitems_lrow, newitems_lrow, ir, ia, un, pc, dic)
Dim sh As Worksheet, data, po_spend_lrow As Long, pc_counter As Long
Dim pc_arr, i As Long, sum_price_increase As Double, sum_price_diff As Double, sum_q_purchased As Double, sum_significance As Double
Dim exitems_arr, icounter As Long, po_spend_raw_arr, po_spend_raw_lrow As Long
Set sh = Sheets("Overview")
sh.AutoFilterMode = 0
data = sh.Range("a1:c36 ")
data(4, 3) = exitems_lrow - 1
data(5, 3) = newitems_lrow - 1
data(6, 2) = "=Text(Round(Days360(B4, B5) / 30, 0),""#"") & "" month(s) ago"""
data(8, 2) = ia
data(9, 2) = pc - 1
data(10, 2) = ir
data(11, 2) = un
pc_arr = Sheets("Price Change").Range("a1:h" & pc)
For i = 2 To pc
If pc_arr(i, 6) <> "" Then
sum_price_increase = sum_price_increase + pc_arr(i, 6)
pc_counter = pc_counter + 1
End If
sum_price_diff = sum_price_diff + pc_arr(i, 5)
sum_q_purchased = sum_q_purchased + pc_arr(i, 7)
sum_significance = sum_significance + pc_arr(i, 8)
Next
On Error Resume Next
data(12, 2) = sum_price_increase / pc_counter
data(20, 1) = data(4, 3)
exitems_arr = Sheets("Existing Catalogue").Range("a1:d" & exitems_lrow)
For i = 2 To exitems_lrow
If exitems_arr(i, 4) > 0 Then
If Not dic.exists("#" & exitems_arr(i, 1)) Then
dic("#" & exitems_arr(i, 1)) = i
icounter = icounter + 1
End If
End If
Next
data(20, 2) = icounter
po_spend_lrow = Sheets("PO Spend").Cells(Rows.Count, 1).End(xlUp).Row
With Sheets("PO Spend").PivotTables("PT")
.PivotFields("Supplier Part Number").PivotItems("Unclassified").Visible = False
data(24, 2) = .GetPivotData("PO Spend in Original Currency")
data(24, 1) = Sheets("PO Spend").Cells(Rows.Count, 2).End(xlUp).Row - 2
.PivotFields("Supplier Part Number").PivotItems("Unclassified").Visible = True
data(26, 2) = .GetPivotData("PO Spend in Original Currency")
data(25, 2) = data(26, 2) - data(24, 2)
End With
data(16, 1) = sum_significance
data(16, 2) = data(16, 1) / data(24, 2)
On Error GoTo 0
po_spend_raw_lrow = Sheets("PO Spend Report (Raw)").Cells(Rows.Count, 1).End(xlUp).Row
po_spend_raw_arr = Sheets("PO Spend Report (Raw)").Range("i1:i" & po_spend_raw_lrow)
icounter = 0
For i = 2 To po_spend_raw_lrow
If po_spend_raw_arr(i, 1) = "Unclassified" Then icounter = icounter + 1
Next
data(25, 1) = icounter
data(26, 1) = data(24, 1) + data(25, 1)
sh.Range("b12,b16").NumberFormat = "0.00%"
sh.Range("a1:c36") = data
End Sub
Bookmarks