getting these settings crossed is the usual cause of these problems
in UK keyboard £ (uk pound sign) is above 3 and @ is above ' and ~ is above # (next to Return key)
( I am in XP so can not confirm my guess you go to Control Panel / Regions & Languages in 7 to change this)
i usee the shift key arrow and letter to 2 that give me this @ some other use alt car depending how is your language setting on the keyboard,see under regional settings what are you keybord setting for the language .