voltmeter + ethernet tester

Hi, I was thinking to make voltmeter+ ethernet tester, from arduino uno,
All data shows up on 16*2 LCD
And because the LCD takes 6 digital pins, I will use shifter ship ARTSSHIP MC74HC164AN, so only 3 digital pins will be used, and 6 pins will be for the ethernet tester, and 2 pins for voltmeter wire, pins from 12 to 3 all of them used, my problem here that I want use two push button to navigate from option to other!! And there is no free pins here, the second problem is I will be using 9V battery, and want to show up the battery level on the screen!! I think that's impossible!! What about analog pins!! I never used them before!!!

I have other question not for this project, I have 2 LCD Display, from old mobiles! Is it possible to use them for arduino to make oscillator!! I didn't find any datasheet for them!! One of them have a 16 leg and the other 6 legs

You can use the analog pins (A0 - A5) as digital inputs or outputs. Set them as inputs with pinMode(Ax, INPUT); or as outputs with pinMode(Ax, OUTPUT); then digitalRead(Ax) or digitalWrite(Ax, level) will work just like the digital pins. If you are interfaceing switches you can also use pinMode(Ax, INPUT_PULLUP);
You could also buy a LCD with an I2C backpack. That would use pins A4 and A5 to communicate with the LCD over I2C.