I think Alwil guys should put some method that disables Repair button automatically when its meant for trojans. It just confuses users because avast! throws a message that it cannot be repaired which is normal for trojans that are always as standalone file and not an infection.
I might just be totally confused (again :P), but I’m fairly sure that another possible reason for not being able to repair is if the infected file is included in something legit that you added to your system after the most recent VRDB update – i.e., there’s no “clean” data to repair it with.
I think in that case you’re specifically told it’s missing from the database – but that would obviously also be true for worms. So the suggestion to have avast handle worms differently from “ordinary” viruses is an excellent one.