Look at your code line by line. It can't work that way.
if ((Event.Type == sf::Event::KeyPressed) && (Event.Key.Code == sf::Key::A))
If this is true, Event.Type will not be both KeyPressed and TextEntered thus the next if will not be executed. That why you have to put the second if outside the first.
But that not all, of course. If you do only that your app won't do what you want.
When I'm speaking about state I mean these ones :
http://en.wikipedia.org/wiki/State_machineLet's look at your aim :
-First, you're in «state 0» : you're waiting for the user to press A.
-When he press A you go into «state 1» : you're now waiting for an int (let's say to begin an int in range [0,9]).
-When the user gave you this number, you enter «state 2» : it's basically the same as «state 2» except you're waiting for the second coord.
-When you received this second number you're in «state 3» : you do what's appropriate with the two coords (move a piece of cheese on the board, launch a missile to (X;Y), set the character to run into direction (X;Y), … whatever).
-Then, you go back to «state 0» (if it's appropriate, sometimes you only want the user to give one time the coords but let's keep this for another day).
Now you have to create some code to do all that stuff. You can use 'enum' to manage the state.