Как указано в комментариях, вложенная формула не получает ""
, окружающих их, а не =
, просто вкладывает их:
Sub Daily_Analysis()
'
' Daily_Analysis Macro
'
Lastrow = ActiveSheet.Range("B" & Rows.Count).End(xlUp).Row
ActiveSheet.Range("L7:L" & Lastrow).Formula = "=Text(A7,""dddd"")"
With ActiveSheet.Range("M7:M" & Lastrow)
.Formula = "=IF((MOD(ROW(M7),2)),IFS(L7=""Saturday"","""",L7=""Sunday"","""",L7<>L6,""Number of times over 75%"",L7=L6,""""),IFS(L7=""Saturday"","""",L7=""Sunday"","""",L6<>L5,COUNTIFS(D7:D103,"">75%"",K7:K103,""Working"")+COUNTIFS(G7:G103,"">75%"",K7:K103,""Working""),L6=L5,""""))"
.Value = .Value
End With
With ActiveSheet.Range("N7:N" & Lastrow)
.Formula = "=IF((MOD(ROW(N7),2)),IFS(L7=""Saturday"","""",L7=""Sunday"","""",L7<>L6,""Percentage of the day"",L7=L6,""""),IFS(L7=""Saturday"","""",L7=""Sunday"","""",L7<>L6,M8/COUNTIFS(K7:K102,""working"",L7:L102,L7),L7=L6,""""))"
.Value = .Value
End With
With ActiveSheet.Range("O7:O" & Lastrow)
.Formula = "=IF((MOD(ROW(O7),2)),IFS(L7=""Saturday"","""",L7=""Sunday"","""",L7<>L6,""hours of poor performance"",L7=L6,""""),IFS(L7=""Saturday"","""",L7=""Sunday"","""",L7<>L6,(15*M8)/60,L7=L6,""""))"
.Value = .Value
End With
'
End Sub
Кстати, вытаскивая подобные элементы и переставляяМожно сократить формулы:
Sub Daily_Analysis()
'
' Daily_Analysis Macro
'
Lastrow = ActiveSheet.Range("B" & Rows.Count).End(xlUp).Row
ActiveSheet.Range("L7:L" & Lastrow).Formula = "=Text(A7,""dddd"")"
With ActiveSheet.Range("M7:M" & Lastrow)
.Formula = "=IF(OR(WEEKDAY(A7,2)>5,l7=l6),"""",IF(Mod(row(),2),""Number of times over 75%"",COUNTIFS(D7:D103,"">75%"",K7:K103,""Working"")+COUNTIFS(G7:G103,"">75%"",K7:K103,""Working"")))"
.Value = .Value
End With
With ActiveSheet.Range("N7:N" & Lastrow)
.Formula = "=IF(OR(WEEKDAY(A7,2)>5,l7=l6),"""",IF(Mod(row(),2),""Percentage of the day"",M8/COUNTIFS(K7:K102,""working"",L7:L102,L7)))"
.Value = .Value
End With
With ActiveSheet.Range("O7:O" & Lastrow)
.Formula = "=IF(OR(WEEKDAY(A7,2)>5,l7=l6),"""",IF(Mod(row(),2),""hours of poor performance"",L7<>L6,(15*M8)/60))"
.Value = .Value
End With
'
End Sub