personally, i'd lob it in the mathes forum, one of the cyborgs in there will probably come up with a nice long algorithm for ya

involving rules.

i.e.

if its in a corner it has a max of 3 possibilities
if its on a side it has a max of 5 possibilities
anywhere else has a max of 8.


what about setting up a class module called LETTER
which has a collection of LETTERS that it can go to and each LETTER object has a boolean value indicating whether it has been used already.

its a start anyway!