When you say "... due to link to other sheets ...", I think you actually
have links to another workbook (i.e. different file). Excel has never been
terrifically good at grabbing information out of other workbooks.
I suspect that your problem is with the use of formulas that refer to
external workbooks. Worse, you're actually using functions (SumIf) to
access the external book, and they don't necessarily work well with external
references at the best of times.
What's your purpose in this? There might be a more reliable method. E.g.
simply open the external file in VBA and copy across what you need; or use
SQL to access the external workbook.
AFAIK it makes no difference whether you assign a value to the .Formula or
the .Value attribute of a cell. The difference comes when you are taking a
value out of a cell.