I have changed the idle control valve and the cranck shaft sensor and the car seemed to run ok but i have just notist that the car when idleing seems to rev upto 2000 rpm but not all the time it seems to be just when warm.
i had it on a bmw. 1st they replaced air flow sensors and meters.
2nd they changed the throttle body valves and seals.
3rd they re-tuned the car
4th they re-mapped it. (this fixed it)
This was an intermittent problem that happened every now and again but warranty covered it all at no cost to me and the bmw diagnostics couldn't pick up a fault. This may be a hard 1 to sort out mate.