i just had this problem on a peugeot , turns out it goes like this
The gearbox is controlled by the abs unit , those litle teeth on the end of the driveshaft tell the gearbox if its moving or not and how fast , there is a control box tats located under the gear shifter , i had to replace that and the 2 abs sensors , 1 on each wheel , i got the box from a scrapyard for 20 quid and the abs sensors were a fiver a pop brand new from the car spares shop
if u gonna takle it yourself id try just changing the abs sensors 1st as this was the actual cause of mine , no box needed :( , still did it after box change which is how i know bout the sensors , dead easy job , take off wheel and u will know what the sensor is as its the only bit near the brakes with a wire , follow the wire to a star head screw , undo screw pull out sensor , unplug ..... plug in new 1 and stick screw back in
hope this helps
friblle, August 2010