I've just 'repaired' my third faulty key fob at no cost whatsoever.
I took one to my local excellent Motor Spares shop,( not a factor), to replace the battery and was told the fob was damaged inside, but that the battery was OK. The battery is secured in a plastic socket and this is in turn supported by thin metal contact 'tags' joining it to the miniature circuitry board in the base of the key body. One of these had broken, (the same one in all three cases) which allowed the battery holder to spring upwards only slightly from its proper positon, thus opening the gap and destroying the contact between the battery and the circuitry. Soldering was suggested as a solution but i reckoned heat in this area could destroy the tiny components and was not an option without specialised equipment.
The solution was simple. I cut out sufficient tiny (about 1cm. square) pieces of thin card (one piece of thicker card would do the job just as well I'm sure) and placed them carefully in position in the base of the holder so that when the case was reassembled the battery was pressed back into its proper position.
Result- Key fobs working perfectly again with no suggestion of inconsistent operation and, of course, a little more money saved to pour into the tank.
A very simple cure, which I hope might be of use to somebody.
Bill