Introduction: HUNDREDS OF PUSH BUTTONS WITH ONE PIN - Arduino
Don't waste more pins in buttons!
Step 1: INTRO
The idea is simple. Use the analog pin A0 for read different push buttons with different resistance values. Then is about setting an interval for each button to use each one.
I prefer to use pull down resistors which force LOW when the button is off, and prevent from strange analog reading values.
Step 2: CIRCUIT
You can put as many buttons as you need with different resistors.
Step 3: Calibrate
For this step you have to associate each button for each analog read value of arduino. You could use a multimeter or the following sketch.
As the Arduino IDE doesn't allows you to create .txt files, just copy the interval (ctrl+C) from the serial monitor for then use them in your program.