Ah yes, users can be a real PIA (pain in the A**) when they aren't willing to try what will end up as easier and better. I presume you already gave them the pitch about spelling incorrectly, etc. I also assume (and suggest) that you only allow them that mode of entry for new records (be a little tough on them, while accomodating their request), so that when you display existing entries you use the multiple tables as you plan to set up.
Here are a couple of ideas:
1. Assume (i.e. require) that the special author input field have everything entered exactly correctly. This means that all you have to do is do an instring search for the semicolon and then add the author to your authors table if it's a new author. Then pick up the AuthorID and put it in your BookAuthors table with the BookID. The code to do this would be something like:
Dim strAuthors as String
Dim strOneAuthor as String
Dim intLength as Integer
Dim intPlace as Integer
strAuthors = me.Authors
NextAuthor:
' me.Authors is the input control for the users to enter
' the authors separated by a semicolon and a space after
' the semicolon.
intLength = Len(strAuthors)
If LEN(IntLength) > 1 then
intPlace = INSTR(1,strAuthors,";"

If intPlace > 0 then
strOneAuthor = MID$(strAuthors,1,intPlace - 1)
' put your code to add the author to the authors table
' and add to the BookAuthors table here
' Note that there must be a space after the semicolon
strAuthors = mid$(strAuthors,intPlace + 1,100)
Goto NextAuthor
else
' we are at the last author entered in the text control
strOneAuthor = strAuthors
' here add the code for Authors and BookAuthors tables
' and now we're done
end if
end if
2. If you wanted to get fancier, when you add an author to the Authors table, look for similar names and if there are any, ask the user to verify that it's a new author or, if not, to select from the existing list of authors. This added code might help convince them of the validity of the "right" method with the separate tables.
Good luck....