I'd try this. The screen updating and calculation off will speed things up. The two testing lines can be removed once you know what is taking all that time.
Application.ScreenUpdating = False
Application.Calculation = xlManual
'.Range("L1") = "Time_Daily"
Set rColL = .Range(.Cells(2, "L"), .Cells(glForeMaxRow, "L"))
rColL.FormulaR1C1 = "=SUMPRODUCT((Fore_Switch_Int_Program=RC2)*(CALLS)*(Interval_Time)) _
/SUMPRODUCT((Fore_Switch_Int_Program=RC2)*(CALLS))"
Msgbox "Formulas loaded, ready to calculate"
Calculate
Msgbox "Calculation done, ready to finish"
rColL = rColL.Value 'turns to value
Application.Calculation = xlAutomatic
Application.ScreenUpdating = True