The great thing about a grey sportcoat, or a grey cardigan etc. is that it is a neutral color that goes with (almost) anything. Depending on your situation you can have a solid shirt or a subtle patterned shirt in nearly any color (except grey unless you want a monochromatic look).
Here are some suggestions though that I like...
As someone else said, light blue and light pink are great.
Navy blue
an ecru or cream color
purple (light or dark)
black
light green
I could go on and on.
Just experiment with some shirts you already have and see what contrasts best with your skin tone and eye color. If you are trying to make the shirt stand out, go for a bolder color. If you are trying to be conservative, go with a light color and a patterned tie to compliment the shirt and make the herringbone pattern on the jacket pop out in contrast.
Style is suppose to be about fun and experimentation. Always ask for advice, but never think there is only one or two right ways to do anything
