If the comma's position is consistent ( always after the last names ) and if you are speaking of 400 records, each one containing a field with lastname and firstname, you could use this calculation:
T = yourNameField ;
p = Position ( T ; "," ; 1 ; 1 ) ;
LastName = Trim ( Middle ( T ; 1 ; p - 1 ) ) ;
FirstName = Trim ( Middle ( T ; p + 1 ; Length ( T ) ) )
FirstName & " " & LastName
I have one field with over 400 names entered
That sounds like data better stored as a set of over 400 related records with one record for each name as raybaudi has commented. But if you truly have this all in one large field, a looping script could use a modified version of his calculation to re-order the names in each row of text.