How to "automatically" remove unused units from uses clause?
ICARUS from Peganza does something similar.
Try using the "Uses Unit Cleaner" Wizard from CnPack you can download from here
Another option is use ICARUS.
ICARUS is a small subset of Pascal Analyzer. It parses Delphi or Borland Pascal source code and generates a list of unneeded unit references in your uses lists