Following on from MrKows,
In the Formula Evauation, anything which shows as 'Volatile' may cause you issues. Although it may not be slower in itself, it will be forced to reclaculate every time the sheet calculates which may result in unneccesary calculations. The two most common volatile functions are VLOOKUP() and INDIRECT()
Also you may be able to speed things up by using an interim step. E.g. If you have a number of INDEX() functions which all need to MATCH() the same value, it is more efficient to store the MATCH() value in the sheet and use the cell value where you are currently using MATCH(). This way the MATCH() only has to be performed once.