Certainly not. But they can help sway people who are on the border to the ethical side of things. Ethics classes can also provide tools and mental models for dealing with gray areas which aren't as cut and dry as cheating on an emissions test.
Yes, and the the thing is that most people are "on the border" - that is to say, little more than a product of their environment (speaking of their actions/attitudes, not their worth as people). If you teach an entire population ethics (assuming it's done well and everything that comes with that), you will still have your 5-10% of rotten apples, just as you'd have 5-10% who would seek out ethics on their own. The big difference will be in the 80-90%.