If you can please post back and include a brief summary of the way you have it now implemented and what the result is, this way someone else will be able to pick up and try to give you some pointers on this. Make sure to include some of the details for how you have this setup currently.
I have not read through all of the other posts in the thread but in general here is a way that you could implement something like this.
There are two parts in addition to the regular coupon code setup. The first addition is to add filtering to the recordset to so that you only select the records where the uses left is greater than 0.
The second part of this would be to implement an update for this column in your coupons table so that you subtract 1 from the available uses. If you have it setup this way you can control the number of uses of the coupon with this extra column. If there are no uses left then the recordset will not return a record and the coupon would not be applied.