It is used to calculate prices based on several relatively complex parameters and contains plenty of references to worksheet ranges.

I added Application.Volatile at the start but this seems to have no effect.

I would rather not post the code as it is business confidential.