I found the solution to this problem. I am working on a 1999 es300 Lexus with the key stuck at ACC unless the battery is removed.
Very easy fix, (note; this is for the Australian variant) there is a solenoid under the ignition barrel that is suppose to retract when the ignition is set back to ACC from run.
When this solenoid is unplugged it allows the key to be removed. It doesn't stop the car from running either. I have checked the plug and 12v is applied when the ignition is switched on, the voltage drops to 0v when the key is switched from ACC to off, this is with the solenoid removed via 2 screws under the barrel.
The problem seems to be that the voltage doesn't drop when going from ACC too OFF to allow the solenoid to retract which unlocks a pin that releases the key. I tested the solenoid and it works fine with 12v applied. It just seems to be the timing issue of the voltage dropping when the key is depressed to be released.
Remove the paneling under the dash, the solenoid will be white with a metal bracket with 2 wires going to it, it is held in with 2 screws. unplug that solenoid and problem fixed. My plug on this car is black for reference.
Hope this helps others,and it costs nothing to repair.