Не элегантное решение, но оно работает и работает достаточно быстро.
В Excel 2007 используйте инструмент "Текст в столбцах" на ленте данных. Используйте пробел в качестве разделителя. Результат будет
A | B | C |
Ivan | P. | Freely |
John | Smith | |
Тогда в ячейке E1 используйте формулу = A1. В ячейке F1 используйте формулу = IF(ISEMPTY(C1); ""; B1). В ячейке G1 используйте формулу = IF(ISEMPTY(C1); B1; C1). Скопируйте формулы из E1, F1 и G1 в строки ниже. Ваши разделенные данные находятся в столбцах E, F и G.
Это решение предполагает, что у всех есть только одно или точно нулевое введенное второе имя, и что если у вас есть люди с отчеством (Надежда Васильевна Орехова) или люди с несколькими фамилиями (Ирен Гарсия Кано), вы хотите обработать вторую подстроку так же, как отчество. Если у вас есть всего несколько экзотов, я бы порекомендовал идти по этому пути, а затем исправлять их в каждой руке. Если у вас их много или слишком много данных, которые нужно проверить вручную, возможно, лучше написать макрос для всего процесса.