Explanation to understand a VBA code for percentage change
In VBA, the ampersand operator (&) is:
Used to force string concatenation of two expressions.
The formula is created/built dynamically that's why the ampersand is used to append/concatenate the different parts.
also why not using the inverted commas and the ampersand sign leads to the failure of the code?
If you don't use the ampersand and write for example:
sFormula = "=IFERROR((" sNew " - " sOld ")/" sOld & ",0)"
You get an error as the compiler expects an end of statement due to the fact there are spaces between the different strings and string variables (sNew and sOld). The compiler won't know what to do with all of them being on a same line.