LCDserial Sheild

I'm at work right now so i don't have the arduino to test the analog values. But i have been working on the math and it seams with a 1K resistor between the analog pin and ground limits the button resistors to any value between 10 Ohms and 100K Ohms. I would keep the resistors no less then 100 Ohms difference from each other.
I.E. 100, 200, 300... ect.
The wider the gap between resistors the better off you are using button combos.

I also played around with changing the grounding resistor to a different value. If you use a smaller value it limits your available resistors for the buttons. If you use a 100 Ohm grounding resistor then you can't use any resistor larger then 10K.

Overall you can almost do a full 104 key keyboard. But the code to detact each of those buttons and have an action performed would probably be too big for the Arduino.

If you wanted say 20 Buttons you could easily use this little chart i made.
Resistor Voltage
0 5V
100 4.54V
200 4.17V
300 3.85V
400 3.57V
500 3.33V
600 3.13V
700 2.94V
800 2.78V
900 2.63V
1000 2.5V
1100 2.38V
1200 2.27V
1300 2.17V
1400 2.08V
1500 2V
1600 1.92V
1700 1.85V
1800 1.79V
1900 1.72V
2000 1.67V

Of course this is with a 1K resistor between ground and the analog pin. So this acts as a simple voltage divider. Also it would be easier to get other resistor values rather then trying to keep them 100 Ohms apart.