it depends as some codes that appear need to be reset via a tech2 or battery disconnect
for example a lambda
i have found a way of clearing codes on the vectra B when the sensor is functioning properly, it changes the code to 'stored'
turn on ignition and wait for EMl to flicker then turn off ignition and do the same process ten times
i have found it to clear down codes but i am sure it doesn't apply to all codes
the ECU is programmed in way that 99% of of drivers will take their cars to a dealership and spend £100 to have the code read even though the fault maybe not active