You could supply a table driven drop down (combo box) that will allow users to select one or type in a new one. If the desired one doesn't appear on the list - the user makes a new one up and the program adds the new enty to the table. Once in the table - it will appear on the drop-down.
It won't fix mispellings - but I bet it will keep 'em to a minimum.
Scott C