In the early days of my problem, I replaced nearly every sensor - made no noticeable difference and then with Pscan I plucked up courage and altered the idle screw and finally, my problem was solved.
I doubt it is the CPS - it generally either works or does not (ie you cannot start the car).
I do suggest replacing the TPS - it is relatively cheap, easy to replace and can be part of the problem if its butterfly degrees open reading is erratic/wrong. If you replace the TPS, remember to do a TPS reset.