Hi All.
I need your help on this.
I have 3 sheets.
Data has id-names & in C column the word active.
Results sheet has many results(about 20000 rows)
What i need is this.
In MonthlyReport sheet i need a macro to change automatically the name in c3, print the report and then do the same for ALL the names that exist in Data sheet range b2:b30.
To get the results i use this recorded macro that i believe that need improovment-but i can leave with it if this is something difficult.
Sub macro1()
Range("A7").Select
ActiveCell.FormulaR1C1 = _
"=COUNTIFS(Results!C[2],R[-4]C[2],Results!C[4],"">0"",Results!C,"">=""&R[-6]C[2],Results!C,""<=""&R[-5]C[2])"
Range("B7").Select
ActiveCell.FormulaR1C1 = "=R[-4]C[1]"
Range("C7").Select
ActiveCell.FormulaR1C1 = _
"=SUMIFS(Results!C[5],Results!C,R[-4]C,Results!C[2],"">0"",Results!C[-2],"">=""&R[-6]C,Results!C[-2],""<=""&R[-5]C)"
Range("C7").Select
Selection.AutoFill Destination:=Range("C7:D7"), Type:=xlFillDefault
Range("C7:D7").Select
Range("C7").Select
ActiveCell.FormulaR1C1 = _
"=SUMIFS(Results!C[5],Results!C3,R3C3,Results!C5,"">0"",Results!C1,"">=""&R1C3,Results!C1,""<=""&R2C3)"
Range("C7").Select
Selection.AutoFill Destination:=Range("C7:D7"), Type:=xlFillDefault
Range("C7:D7").Select
Range("D7").Select
Sheets("MonthlyReports").Select
Selection.Cut
Range("E7").Select
ActiveSheet.Paste
Range("C7").Select
Selection.AutoFill Destination:=Range("C7:D7"), Type:=xlFillDefault
Range("C7:D7").Select
Range("D7").Select
Sheets("MonthlyReports").Select
ActiveCell.FormulaR1C1 = _
"=SUMIFS(Results!C[3],Results!C3,R3C3,Results!C5,"">0"",Results!C1,"">=""&R1C3,Results!C1,""<=""&R2C3)"
Range("E7").Select
Sheets("MonthlyReports").Select
Selection.AutoFill Destination:=Range("E7:F7"), Type:=xlFillDefault
Range("E7:F7").Select
Selection.AutoFill Destination:=Range("E7:G7"), Type:=xlFillDefault
Range("E7:G7").Select
Range("G7").Select
Sheets("MonthlyReports").Select
End Sub
Can you help me on this pls?
Bookmarks