Как разбить фио на несколько ячеек. Разделить текст Excel на несколько ячеек.

В этой статье Вы найдёте несколько способов, как разбить ячейки или целые столбцы в Excel 2010 и 2013. Приведённые примеры и скриншоты иллюстрируют работу с инструментами «Текст по столбцам» и «Мгновенное заполнение», кроме этого Вы увидите подборку формул для разделения имён, текстовых и числовых значений. Этот урок поможет Вам выбрать наилучший метод разбиения данных в Excel.

Говоря в общем, необходимость разбить ячейки в Excel может возникнуть в двух случаях: Во-первых, при импорте информации из какой-либо внешней базы данных или с веб-страницы. При таком импорте все записи копируются в один столбец, а нужно, чтобы они были помещены в разных столбцах. Во-вторых, при разбиении уже существующей таблицы, чтобы получить возможность качественнее настроить работу фильтра, сортировку или для более детального анализа.

Разбиваем ячейки в Excel при помощи инструмента «Текст по столбцам»

Инструмент «Текст по столбцам » действительно очень удобен, когда нужно разделить данные из одного столбца по нескольким в Excel 2013, 2010, 2007 или 2003.

«Текст по столбцам» позволяет разбивать значения ячеек, отделённые разделителями, или выделять данные фиксированной ширины (когда все значения содержат определённое количество символов). Давайте рассмотрим эти варианты подробнее:

Разбиваем текстовые данные с разделителями по столбцам в Excel

Предположим, есть список участников, приглашённых на конференцию или какое-то другое мероприятие. На рисунке ниже видно, что в столбце Participant (Участник) перечислены имена участников, государство и ожидаемая дата прибытия:

Необходимо разбить этот текст на отдельные столбцы, чтобы таблица имела следующие данные (слева направо): First Name (Имя), Last Name (Фамилия), Country (Страна), Arrival Date (Ожидаемая дата прибытия) и Status (Статус).



Примечание: Если у Вас нет столбцов, следующих непосредственно за тем, что Вы хотите разбить, то необходимость в этом шаге отпадает и его можно пропустить. Главное не упустите, что пустых столбцов должно быть не меньше, чем количество столбцов, на которое вы хотите разделить данные.

Совет: Если Вы не хотите импортировать какой-то столбец (столбцы), который показан в области Data preview (Образец разбора данных), то выделите его и выберите вариант Do not import column (Пропустить столбец) в разделе Column data format (Формат данных столбца).



Разбиваем текст фиксированной ширины по нескольким столбцам

Если данные состоят из текстовых или числовых значений с фиксированным количеством символов, Вы можете разбить их на несколько столбцов следующим способом.

К примеру, есть список товаров с ID и наименованием, причем идентификатор товара – это 9 символов, которые стоят перед наименованием этого товара:


Вот что Вам нужно сделать, чтобы разбить такой столбец на два:



Разбиваем объединённые ячейки в Excel

Если Вы объединили несколько ячеек на листе Excel и теперь хотите вновь разбить их по отдельным столбцам, откройте вкладку Home (Главная) и в группе команд Alignment (Выравнивание) нажмите маленькую чёрную стрелку рядом с кнопкой Merge & Center (Объединить и поместить в центре). Далее из выпадающего списка выберите Unmerge Cells (Отменить объединение ячеек).

Таким образом объединение ячеек будет отменено, но удовольствие от результата будет испорчено тем, что все данные останутся в левом столбце. Думаю, Вы догадались, что нужно снова использовать функцию Text to Columns (Текст по столбцам), чтобы разбить данные из одного столбца на два или более столбцов.

Разделяем данные на несколько столбцов в Excel 2013 при помощи мгновенного заполнения

Если Вы уже обновились до Excel 2013, то можете воспользоваться преимуществами нового инструмента «Мгновенное заполнение » и заставить Excel автоматически заполнять (в нашем случае – разбивать) данные, при обнаружении определенной закономерности.

Если Вы ещё не знакомы с этой функцией, я попробую кратко объяснить её суть. Этот инструмент анализирует данные, которые Вы вводите на рабочий лист, и пытается выяснить, откуда они взялись и существует ли в них какая-либо закономерность. Как только «Мгновенное заполнение» распознает Ваши действия и вычислит закономерность, Excel предложит вариант, и последовательность записей в новом столбце появится буквально за мгновение.

Таким образом, при помощи этого инструмента Вы можете взять какую-то часть данных, находящихся в одном или нескольких столбцах, и ввести их в новый столбец. Думаю, Вы лучше поймёте о чём я говорю из следующего примера.

Первым делом, убедитесь, что инструмент «Мгновенное заполнение» включен. Вы найдёте этот параметр на вкладке File (Файл) > Options (Параметры) > Advanced (Дополнительно) > Automatically Flash Fill (Автоматически выполнять мгновенное заполнение).


Теперь давайте посмотрим, как можно автоматически разбить данные по ячейкам. Итак, Вы включили инструмент «Мгновенное заполнение», и начинаете вводить с клавиатуры данные, которые нужно поместить в отдельные ячейки. По мере ввода Excel будет пытаться распознать шаблон в вводимых значениях, и как только он его распознает, данные автоматически будут вставлены в остальные ячейки. Чтобы понять, как это работает, посмотрите на рисунок ниже:

Как видите, я ввёл только пару имён в столбец B , и «Мгновенное заполнение» автоматически заполнило остальные ячейки именами из столбца A . Если вы довольны результатом, просто нажмите Enter , и весь столбец будет заполнен именами. Очень умный инструмент, не правда ли?

Если «Мгновенное заполнение» включено, но не предлагает никаких вариантов, которые соответствуют определённому шаблону, Вы можете запустить этот инструмент вручную на вкладке Data (Данные) > Flash Fill (Мгновенное заполнение) или нажав сочетание клавиш Ctrl+E .


Как в Excel разбивать ячейки при помощи формул

Существуют формулы, которые могут быть очень полезны, когда возникает необходимость разбить ячейки или столбцы с данными в Excel. На самом деле, следующих шести функций будет достаточно в большинстве случаев – LEFT (ЛЕВСИМВ), MID (ПСТР), RIGHT (ПРАВСИМВ), FIND (НАЙТИ), SEARCH (ПОИСК) и LEN (ДЛСТР). Далее в этом разделе я кратко объясню назначение каждой из этих функций и приведу примеры, которые Вы сможете использовать в своих книгах Excel.

Пример 1

Самая распространённая ситуация, когда могут понадобится эти формулы – это необходимость разделить имена из одного столбца по нескольким. На рисунке ниже показано, какого результата мы пытаемся достичь:


Вы легко сможете разбить такие имена на два столбца при помощи следующих формул:

    Извлекаем имя (столбец First name):

    LEFT(A2,SEARCH(" ",A2,1)-1)
    =ЛЕВСИМВ(A2;ПОИСК(" ";A2;1)-1)

    Извлекаем фамилию (столбец Last name):

    RIGHT(A2,LEN(A2)-SEARCH(" ",A2,1))
    =ПРАВСИМВ(A2;ДЛСТР(A2)-ПОИСК(" ";A2;1))

Для тех, кому интересно, что означают эти формулы, я попробую объяснить более подробно.

SEARCH (ПОИСК) или FIND (НАЙТИ) – это абсолютно идентичные функции, которые выполняют поиск позиции определенной текстовой строки в заданной ячейке. Синтаксис формулы:

SEARCH(find_text,within_text,)
=ПОИСК(искомый_текст;текст_для_поиска;[нач_позиция])

В качестве аргументов Вы должны указать: что нужно найти, где нужно искать, а также позицию символа, с которого следует начать поиск. В нашем примере SEARCH(" ",A2,1) или ПОИСК(" ";A2;1) говорит о том, что мы хотим найти символ пробела в ячейке A2 и начнём поиск с первого символа.

Замечание: Если поиск начинается с первого символа, Вы можете вообще пропустить аргумент start_num (нач_позиция) в формуле и упростить её до такого вида:

LEFT(A2,SEARCH(" ",A2)-1)

LEFT (ЛЕВСИМВ) и RIGHT (ПРАВСИМВ) – возвращает левую или правую часть текста из заданной ячейки соответственно. Синтаксис формулы:

LEFT(text,)
=ЛЕВСИМВ(текст;[количество_знаков])

В качестве аргументов указываем: какой текст взять и сколько символов извлечь. В следующем примере формула будет извлекать левую часть текста из ячейки A2 вплоть до позиции первого найденного пробела.

LEFT(A2,SEARCH(" ",A2)-1)
=ЛЕВСИМВ(A2;ПОИСК(" ";A2)-1)

LEN (ДЛСТР) – считает длину строки, то есть количество символов в заданной ячейке. Синтаксис формулы:

LEN(text)
=ДЛСТР(текст)

Следующая формула считает количество символов в ячейке A2 :

LEN(A2)
=ДЛСТР(A2)

Если имена в Вашей таблице содержат отчества или суффиксы, то потребуются немного более сложные формулы с использованием функции MID (ПСТР).

Пример 2

Вот такие формулы нужно использовать, когда имена, которые требуется разбить, содержат отчество или только один инициал отчества посередине.

    Извлекаем имя:

    LEFT(A2,FIND(" ",A2,1)-1)

    Извлекаем отчество:


    Извлекаем фамилию:


Функция MID (ПСТР) – извлекает часть текстовой строки (то есть заданное количество символов). Синтаксис:

MID(text,start_num,num_chars)
=ПСТР(текст;начальная_позиция;количество_знаков)

В качестве аргументов функции указываем: какой текст взять, позицию символа, с которого нужно начать, и сколько символов извлечь.

Пример 3

Вы можете использовать аналогичные формулы, чтобы разбить имена с суффиксами в конце:

    Извлекаем имя:

    LEFT(A2,FIND(" ",A2,1)-1)
    =ЛЕВСИМВ(A2;НАЙТИ(" ";A2;1)-1)

    Извлекаем фамилию:

    MID(A2,FIND(" ",A2,1)+1,FIND(" ",A2,FIND(" ",A2,1)+1)-(FIND(" ",A2,1)+1))
    =ПСТР(A2;НАЙТИ(" ";A2;1)+1;НАЙТИ(" ";A2;НАЙТИ(" ";A2;1)+1)-(НАЙТИ(" ";A2;1)+1))

    Извлекаем суффикс:

    RIGHT(A2,LEN(A2)-FIND(" ",A2,FIND(" ",A2,1)+1))
    =ПРАВСИМВ(A2;ДЛСТР(A2)-НАЙТИ(" ";A2;НАЙТИ(" ";A2;1)+1))

Пример 4

А вот формулы, позволяющие разбить имена с фамилией, стоящей впереди и отделенной от имени запятой, и отчеством, находящимся в конце:

    Извлекаем имя:

    MID(A2,SEARCH(" ",A2,1)+1,FIND(" ",A2,FIND(" ",A2,1)+1)-(FIND(" ",A2,1)+1))
    =ПСТР(A2;ПОИСК(" ";A2;1)+1;НАЙТИ(" ";A2;НАЙТИ(" ";A2;1)+1)-(НАЙТИ(" ";A2;1)+1))

    Извлекаем отчество:

    RIGHT(A2,LEN(A2)- FIND(" ",A2,FIND(" ",A2,1)+1))
    =ПРАВСИМВ(A2;ДЛСТР(A2)-НАЙТИ(" ";A2;НАЙТИ(" ";A2;1)+1))

    Извлекаем фамилию:

    LEFT(A2,FIND(" ",A2,1)-2)
    =ЛЕВСИМВ(A2;НАЙТИ(" ";A2;1)-2)

Пример 5

Как Вы понимаете, эти формулы работают не только для разделения имён в Excel. Вы можете использовать их для разбиения любых данных из одного столбца по нескольким. Например, следующие формулы Вы можете использовать, чтобы разбить текстовые данные, разделённые запятыми.

Часто при составлении договора, счета, коммерческого предложения или другого документа, мы работаем с фамилией именем и отчеством клиента. Бывает необходимо разделить ФИО и получить только имя, что обратиться к клиенту в тексте документа, бывает нужно сделать графу с подписантом, оставив фамилию и инициалы.

Конечно можно написать формулу , которая извлечет нужные данные из ФИО, но даже опытному человеку потребуется 5-7 минут на это. А что если заранее не знаешь расположение фамилии в тексте? Гораздо проще и удобнее пользоваться готовыми функциями из надстройки VBA-Excel .

Найти фамилию в ФИО

После установки надстройки будет доступна новая функция =ФАМИЛИЯ(ФИО ) , где

  • ФИО - текст или ссылка на ячейку, которая содержит ФИО полностью

Задача данной функции - извлечь из ячейки только фамилию. Причем ей не важен порядок. Фамилия может идти как в начале, так в конце или середине текста.

Найти имя в ФИО

Аналогичная функция для имени =ИМЯ(ФИО ) . Она извлекает имя из текста с ФИО, также не важно где расположенное.


Найти отчество в ФИО

Последняя функция из этой серии - функция =ОТЧЕСТВО(ФИО ) для извлечения отчества.


Примеры работы с ФИО в Excel

Вывести фамилию и инициалы

Одной из распространенных задач при составлении документов - это преобразование текста вида Фамилия Имя Отчество к тексту Фамилия И. О. Решить ее можно используя следующую формулу.

msoffice-prowork

Многие знают, что для того, чтобы объединить текст в двух ячейках достаточно воспользоваться функцией СЦЕПИТЬ (CONCATENATE), однако, как быть, если необходимо не объединить, а наоборот разделить текст в ячейке? Если количество символов, которое необходимо отделить известно (не важно справа или слева), тогда можно воспользоваться функциями ЛЕВСИМВ (LEFT) или ПРАВСИМВ (RIGHT), в зависимости с какой стороны необходимо выделить определенное количество символов.

Однако, как быть, если необходимо разделить ячейку в которой заведомо не известно количество символов, которые нужно отделить, а известно лишь сколько частей необходимо получить в результате операции. Самым простым примером такой ситуации может быть необходимость выделить из ячейки в которой занесено ФИО человека, отдельно фамилию, имя и отчество. Фамилии у всех разные, поэтому заранее узнать количество символов, которые необходимо отделить, не получится.

На Ваше обозрение представим два способа разделения текста. Один очень быстрый - для тех кому надо просто разделить текст заменив имеющийся, а второй с использованием формул.

Первый способ - супер быстрый.

На самом деле в существует встроенная возможность быстрого разделения текста в ячейке, если там присутствует или присутствуют разделитель/разделители (например, простой пробел или запятая). Причем таких разделителей может быть несколько, т.е. текст будет разделятся если в строке присутствует или пробел, или точка с запятой или запятая и т.д.

Для этого необходимо выделить ячейки с текстом, который необходимо разделить и воспользоваться командой "Текст по столбцам".

В англоязычной версии данная команда звучит как "Text to Columns" вкладки "DATA".


После несложных подсказок мастера (на самом деле, в нашем примере после выбора разделителя - пробела можно смело жать "Готово")


А вот и, собственно, результат.


Второй способ - с использованием формул.

В такой ситуации понадобится сочетание функций: ПОИСК (SEARCH) и ПСТР (MID). Для начала, с помощью первой находим пробел между словами (между фамилией и именем и именем и отчеством), а потом подключаем вторую для того, чтобы выделить необходимое количество символов. Грубо говоря, первой функцией определяем количество символов, а второй - уже разделяем.

Кроме того, поскольку разделительного знака в конце строки нет, то количество символов в последнем слове (нашем случае - отчестве) вычислить не удастся, но это не проблема, достаточно указать заведомо большее количество символов в качестве аргумента "число знаков" функции ПСТР, например, 100.

Рассмотрим вышесказанное на примере. Сначала, для лучшего понимания, разнесем формулы и, таким образом, разделим весь процесс на два этапа.



Для того, чтобы определить количество символов, которые необходимо выделить в строке, необходимо определить позиции разделителей (в нашем случае пробела) их будет на один меньше нежели слов в ячейке.

Поскольку информация о количестве необходимых символах получена, следующим этапом будет использование функции ПСТР (MID).


Здесь, в качестве аргументов, используются промежуточные значения, полученные с помощью функции ПОИСК. Для последней колонки количество символов неизвестно, поэтому было взято заведомо бОльшее количество символов (в нашем случае 100).

Теперь попробуем соединить промежуточные расчеты в одну формулу.



Если текст в ячейке необходимо разделить лишь на две части, то необходимо произвести поиск лишь одного пробела (либо другого разделителя, который находится между словами), а для разделения на 4 и больше частей формулу придется усложнить поиском 3го, 4го и т.д. разделителей.

Приобрести продукты

Программа для редактирования данных. Информация в файле представлена в виде таблицы, которая состоит из строк и столбцов. Наименьшая единица измерения в документе Excel - ячейка. Эти элементы имеют условный номер, который определяется их отношением к столбцу и строке, например, A1 или D13. Вы можете изменять ширину и высоту ячеек, придавая им желаемый вид, чтобы форма, размер и соотношение сторон соответствовали требованиям. Кроме того, можно объединять соседние элементы с любой из сторон или отменять разделение, чтобы подстраивать структуры таблицы. К сожалению, так как ячейка является минимальной единицей файла в Excel, разделить её нельзя.

Электронные таблицы Excel очень популярны и часто эксплуатируются для работы с данными. Иногда у юзеров возникает необходимость разделить ячейку на две или несколько частей, но такой возможности в программе нет. Тем не менее есть способы обойти это ограничение и придать таблице желаемый вид.

Потребность разделить ячейку может появляться в том случае, если в одном из столбцов должно содержаться два и более элемента данных. Например, два или несколько названий определённого предмета, тогда как другие в столбце «наименование» имеют лишь одно. Кроме того, некоторым пользователям требуется разбить данные, которые содержатся в одной ячейке, на несколько. Самый распространённый пример - разделение ФИО человека отдельно на фамилию, имя и отчество, чтобы каждое значение занимало отдельную клетку. В обоих случаях вы можете выполнить разделение с помощью таких функций, как объединение ячейки, «Текст по столбцам», «Мгновенное заполнение» и множества формул , которые настраиваются индивидуально для каждого случая.

Excel имеет определённую структуру таблицы - это нужно для того, чтобы было проще ориентироваться в данных, а также не было ошибок в формулах и расчётах, проблем с комбинацией и считыванием. Каждая ячейка имеет свой индивидуальный номер, который обусловлен её положением на осях цифр и латинских букв. Например, буквенно-числовой адрес первого элемента в таблице - A1. Одной строке соответствует одна ячейка таблицы, и наоборот. Это значит, что она является минимальным элементом и не может быть разделена на два или более самостоятельных.


В некоторых случаях юзеру Excel нужно сделать так, чтобы в одном столбце было два или более значения для пересечения с одной из строк. Например, в том случае, когда та или иная вещь имеет несколько названий или номеров, а данные остальных умещаются в одну ячейку. Аналогично со строками, если один столбец включает в себя первичные категории (например, «программисты», «дизайнеры» и так далее), а другой - вторичные («программисты» - Иван, Пётр). Несмотря на то что в редакторе нельзя сделать это напрямую, ограничение можно обойти. Для этого нужно:

  1. Заранее запланировать, какое максимальное количество значений будет включать в себя строка или столбец;
  2. На этапе подготовки листа Excel к работе объединить те ячейки столбца или строки, которые будут использоваться как одинарные;
  3. Таким образом, «разделённые» ячейки будут представлять собой самостоятельные элементы, а «целые» - соединённые, то есть результат получится визуальным (но он всё ещё будет соответствовать требованиям Excel).

Пример: в столбце A и строках 1–5 у вас расположено 5 фамилий, а соседний столбец B содержит должности этих людей в компании. Если один или несколько человек занимают 2 должности, впишите вторую в столбец C, а для остальных просто объедините B1 и C1, B2 и C2 и так далее. Аналогично в тех случаях, когда одному значению в первом столбце соответствует более 2 в последующих. Каждая ячейка будет иметь свой адрес в Excel и останется полностью функционирующей.

Как разбить ячейки, объединённые при планировании структуры

Если после действий, подобных описанным в предыдущем пункте, вы решили, что всей странице нужно вернуть прежнее состояние и разбить ячейки:

  1. Откройте нужный лист, выделите все ячейки (или определённую часть) и перейдите во вкладку «Главная» на верхней панели Excel;
  2. В области «Выравнивание» нажмите на стрелку и откройте выпадающий список с функциями «Объединить и поместить в центре», затем выберите «Отменить объединение ячеек»;
  3. Элементы будут разбиты на одинарные, но все данные сместятся в левый верхний - распределить их по столбцам вы сможете с помощью функции «Текст по столбцам», которую мы рассмотрим дальше.


Как визуально разбить ячейку в таблице Excel, как разделить элемент по диагонали

Если вам достаточно разбить ячейку визуально, не изменяя её свойств и адреса в Excel, нужно:

  1. Установить курсор на необходимый элемент либо выделить несколько (или весь лист).
  2. Открыть вкладку «Главная», в области «Ячейки» кликнуть «Формат».
  3. Откроется выпадающее меню, где вам нужно выбрать «Формат ячеек».
  4. В новом окне необходимо перейти во вкладку «Граница» - здесь вы сможете самостоятельно нарисовать нужные рамки ячейки (вертикальные, горизонтальные и диагональные линии, несколько вариантов линий и множество цветов).
  5. Есть и другой вариант - нужно кликнуть по выделенным ячейкам правой клавишей мыши, чтобы вызвать контекстное меню, затем выбрать «Формат ячеек», перейти во вкладку «Граница» и точно так же сделать линии.
  6. Одна или несколько выбранных ячеек получит разметку, которую вы указали.

Для того чтобы сделать ячейку, которая будет включать в себя название строк и столбцов одновременно, нужно сделать:

  1. В окне «Формат ячеек», во вкладке «Граница» нарисовать любую диагональную линию, которая идёт из левого верхнего в правый нижний угол.
  2. Применить форматирование.
  3. Ввести текст в «верхнюю часть» ячейки (она разделена только визуально), которая будет соответствовать строке, например, «название»).
  4. Выровнять его по левому или правому краю, расположить точнее с помощью пробелов.
  5. Во время редактирования элемента нажать Alt + Enter, чтобы перейти на новую строку, затем ввести текст для столбца, например, «количество»;
  6. Если текст расположен или выглядит не так, как нужно, необходимо поменять его местоположение с помощью пробела либо изменить размер и соотношение сторон ячеек.


Как разбить данные ячейки по столбцам таблицы Excel с помощью разделителя

Если у вас есть ячейки, которые заполнены некоторыми данными, и их нужно распределить по столбцам по категориям, используйте функцию разделения. Она отлично подойдёт в том случае, когда в элементах указана информация, например, о приглашённых людях - имя, фамилия, номер билета, их город или страна, дата прибытия. Если всё это было перенесено из текстового документа, оно не будет иметь форматирования. Для того чтобы было удобнее работать в Excel, данные нужно разбить по соответствующим столбцам - «имя», «фамилия» и так далее.

Делается это так:

  1. Создайте новые пустые столбцы, если справа от того, который содержит информацию, их недостаточно (их должно быть не меньше, чем количество категорий данных), иначе сведения будут записаны на другие, уже заполненные. Поставьте курсор мыши после искомого столбца на строке с латинскими буквами и нажмите по рамке таблицы правой клавишей мыши, в контекстном меню выберите «Вставить». Если нужно добавить несколько пустых столбцов, перед этим выберите аналогичное количество справа от искомого (нажмите на ячейку с латинской буквой и перетащите выделение).
  2. Выделите тот столбец, который нужно разбить. Откройте «Данные» - «Работа с данными» - «Текст по столбцам».
  3. В новом окне (Мастер распределения текста по столбцам) выберите формат данных. Если в искомом столбце информация разных категорий разделена пробелами или запятыми, выберите «С разделителями», если она имеет фиксированное количество данных - «Фиксированной ширины» (например, цифровой идентификатор - рассмотрим этот вариант позже), нажмите «Далее».
  4. Затем укажите разделители, которые используются в массиве текста в столбце. Укажите их в «Символом-разделителем является» (если их несколько, перечислите все в поле «Другой»). Также укажите «Считать последовательные разделители одним», если в данных встречаются несколько типов подряд (например, два пробела подряд либо точка, которая говорит о сокращении слова, а не о конце предложения, и после неё идёт запятая).
  5. Настройте ограничитель строк, если в тексте встречаются предложения, которые выделены кавычками, а в них встречаются разделители из прочего пункта, но разбивать их нельзя. К таким относятся предложения вроде «Россия, Москва» - адрес в таком случае должен оставаться целостным. Если вы не установите ограничитель, «Россия» и «Москва» окажутся в разных столбцах.
  6. Выберите формат данных. По умолчанию он «Общий». Если в вашей информации есть даты или суммы денежных средств, укажите соответствующие для того столбцы, в которых они будут размещены. Здесь вы также можете указать, куда будут помещены те или иные данные. Кликните по иконке выбора диапазона справа от «Поместить в» и в качестве первого столбца укажите крайний левый из свободных, которые должны быть заполнены. К сожалению, данные нельзя переместить в другую книгу Excel и даже на другой лист, но вы можете разбить их на текущем, после чего просто скопировать в нужное место.
  7. Нажмите «Готово» - все настройки будут применены. Сохраните документ, чтобы не утерять их.

Как распределить данные ячейки по столбцам таблицы Excel с помощью мгновенного заполнения

Начиная с версии 2013 года, Microsoft Office Excel предлагает возможность утилизировать «Мгновенное заполнение». С помощью данной функции вы можете заставить редактор автоматически распределить данные в ячейки столбца , как только он заметит закономерность ввода.

Работает опция так: Excel начинает анализировать данные, которые вы вписываете в ячейки рабочего листа, и пытается выяснить, откуда они берутся, чему соответствуют и есть ли в них закономерность. Так, если в столбце A у вас указаны фамилии и имена людей, а в B вы вводите фамилии, с помощью «Мгновенного заполнения» утилита посчитает этот принцип и предложит автоматически распределить все значения в столбец B.

С помощью указанного инструмента вам достаточно ввести в новый столбец лишь часть данных - учитывая, что функция работает в пассивном режиме, она очень удобная. Чтобы её активировать и использовать:

  1. Убедитесь, что у вас активировано «Мгновенное заполнение» - оно находится во вкладке «Файл» - пункт «Параметры» - «Дополнительно» - «Автоматически выполнять мгновенное заполнение» (установите галочку, если её там нет).
  2. Начните вводить в один из столбцов данные из другого, и редактор сам предложит распределить информацию массово. Если вам подходит то, что предлагает система Excel, нажмите Enter.
  3. Если функция активирована, но не срабатывает в рамках определённого шаблона, запустите инструмент вручную в «Данные» - «Мгновенное заполнение» или нажмите Ctrl + «E».


Как распределить данные ячейки по столбцам таблицы Excel с помощью формул

В Excel есть формулы, которые позволяют упростить разбитие данных и сделать это более функционально. Как правило, обычно достаточно команд «ЛЕВСИМВ», «ПСТР», «ПРАВСИМВ», «НАЙТИ», «ПОИСК» И «ДЛСТР». Давайте рассмотрим, когда они нужны и как их использовать.


Как разделить имя и фамилию в 2 столбца

Один из самых частых случаев - потребность разделить имена и фамилии из столбца A в B и C соответственно. Для этого нужно сделать так, чтобы редактор сам нашёл пробел между значениями и разбил всё автоматически. Используйте формулу «=ЛЕВСИМВ(A2;ПОИСК(» «; A2;1)-1)». Она ищет пробелы в поисках, после чего принимает их за разделитель и отправляет, например, фамилии в левый из двух столбцов, а имена - в правый. Аналогично с другими значениями, которые разбиты пробелами. Указанная формула не подходит для более сложных ячеек, в том числе имён с фамилиями и отчествами, суффиксами и прочими данными.

Как разделить имя, фамилию и отчество в 3 столбца

Если вам нужно разбить на столбцы полное ФИО из трёх значений (при этом любое из них может быть только в виде буквенного инициала):

  1. Используйте формулу «=ЛЕВСИМВ(A2;НАЙТИ(» «;A2;1)-1)», чтобы отделить имя;
  2. Используйте «=ПСТР(A2;НАЙТИ(» «;A2;1)+1;НАЙТИ(» «;A2;НАЙТИ(» «;A2;1)+1)-(НАЙТИ(» «;A2;1)+1))», чтобы найти отчество (в записи вроде «Иванов Иван Иванович»)
  3. Используйте «=ПРАВСИМВ(A2;ДЛСТР(A2)-НАЙТИ(» «;A2;НАЙТИ(» «;A2;1)+1))», чтобы извлечь фамилию.

Эти же формулы можно эксплуатировать для записей вроде «Иванов Иван младший» (на западный манер) или других, содержащих суффикс.

Как распределить данные, если они разделены запятой

Если данные в ячейках записаны в виде «Black, Bob Mark» (полное имя с фамилией спереди - в английском языке в таком случае требуется постановка запятой), разделить их в привычные нам «Bob Mark White» можно так:

  1. Используйте «=ПСТР(A2;ПОИСК(» «;A2;1)+1;НАЙТИ(» «;A2;НАЙТИ(» «;A2;1)+1)-(НАЙТИ(» «;A2;1)+1))», чтобы выделить имя;
  2. Используйте «=ПРАВСИМВ(A2;ДЛСТР(A2)-НАЙТИ(» «;A2;НАЙТИ(» «;A2;1)+1))», чтобы извлечь отчество;
  3. Используйте «=ЛЕВСИМВ(A2;НАЙТИ(» «;A2;1)-2)», чтобы извлечь фамилию».

Другие формулы

Excel позволяет работать не только с именами и фамилиями людей, но и с другими типами данных . Другой часто встречающийся пример - адреса. Если в ячейке записана информация вида «Россия, Москва, улица Арбат», вы можете распределить значения по другим элементам, в качестве разделителя указав запятую, точку или другой произвольный символ. Чтобы разбить такой адрес из 3 частей (страна, город, улица):

  1. Используйте «=ЛЕВСИМВ(A2;ПОИСК(«,»;A2)-1)», чтобы отделить страну;
  2. Используйте «=ПСТР(A2;ПОИСК(«,»;A2)+2;ПОИСК(«,»;A2;ПОИСК(«,»;A2)+2)-ПОИСК(«,»;A2)-2)», чтобы выделить город;
  3. Используйте «=ПРАВСИМВ(A2;ДЛСТР(A2)-(ПОИСК(«,»;A2;ПОИСК(«,»;A2)+1)+1))», чтобы отделить улицу.


Таким образом, назначение указанной формулы - разделять данные в том месте, где встречается заданный значок (в данном случае - запятая). Просто укажите его в кавычки.

Итог

Microsoft Office Excel предлагает широкие возможности для работы как с сеткой таблицы, так и с её содержимым. Несмотря на то что нет функции для дробления ячейки на несколько частей, вы можете добиться результата, планируя структуру и группируя элементы. Если форматирование вас не устроит, его можно отменить на всём листе. С помощью границ можно разделить элемент по диагонали, чтобы добиться расположения названия столбцов справа сверху, а строк - слева снизу. Если вы хотите распределить массив информации по ячейкам других столбцов, используйте формулы, функции «Мгновенное заполнение» или «Текст по столбцам».

Раннее мы рассматривали возможность на примере деления ФИО на составные части. Для этого мы использовали инструмент в Excel «Текст по столбцам».

Несомненно, это очень важный и полезный и инструмент в Excel, который значительно может упростить множество задач. Но у данного способа есть небольшой недостаток. Если вам, например, постоянно присылают данные в определенном виде, а вам постоянно необходимо их делить, то это занимает определенное время, кроме того, если данные вам прислали заново, то вам снова нужно будет проделать все операции.

Если рассматривать на примере деления ФИО, то разделить текст можно будет с помощью текстовых формул Excel, используя функцию и , которую мы рассматривали в прошлых статьях. В этом случае вам достаточно вставить данные в определенный столбец, а формулы автоматически разделят текст так как вам необходимо. Давайте приступит к рассмотрению данного примера.

У нас есть столбец со списком ФИО, наша задача разместить фамилию, имя отчество по отдельным столбцам.

Попробуем очень подробно описать план действия и разобьем решение задачи на несколько этапов.

Первым делом добавим вспомогательные столбцы, для промежуточных вычислений, чтобы вам было понятнее, а в конце все формулы объединим в одну.

Итак, добавим столбцы позиция 1-го и 2-го пробелам. С помощью функции НАЙТИ, как мы уже рассматривали в предыдущей статье найдем позицию первого пробелам. Для этого в ячейке «H2» пропишем формулу

НАЙТИ(" ";A2;1)


Теперь нам необходимо найти порядковый номер второго пробела. Формула будет такая же, но с небольшим отличием. Если прописать такую же формулу, то функция найдет нам первый пробел, а нам нужен второй пробел. Значит на необходимо поменять третий аргумент в функции НАЙТИ — начальная позиция — то есть позиция с которой функция будет искать искомый текст. Мы видим, что второй пробел находится в любом случае после первого пробела, а позицию первого пробела мы уже нашли, значит прибавив 1 к позиции первого пробелам мы укажем функции НАЙТИ искать пробел начиная с первой буквы после первого пробела. Функция будет выглядеть следующим образом:

НАЙТИ(" ";A2;H2+1)


Приступаем к делению первой части текста — Фамилии

Для этого мы воспользуемся функцией , напомню синтаксис данной функции:

ПСТР(текст ; начальная_позиция ; число_знаков ), где

  1. текст — это ФИО, в нашем примере это ячейка A2;
  2. начальная_позиция - в нашем случае это 1, то есть начиная с первой буквы;
  3. число_знаков — мы видим, что фамилия состоит из всех знаков, начиная с первой буквы и до 1-го пробела. А позиция первого пробела нам уже известна. Это и будет количество знаков минус 1 знак самого пробела.

Формула будет выглядеть следующим образом:

ПСТР(A2 ;1 ;H2-1 )


Приступаем к делению второй части текста — Имя

Снова используем функцию =ПСТР(текст ; начальная_позиция ; число_знаков ), где

  1. текст — это тот же текст ФИО, в нашем примере это ячейка A2;
  2. начальная_позиция - в нашем случае Имя начинается с первой буква после первого пробела, зная позицию этого пробела получаем H2+1 ;
  3. число_знаков — число знаков, то есть количество букв в имени. Мы видим, что имя у нас находится между двумя пробелами, позиции которых мы знаем. Если из позиции второго пробела отнять позицию первого пробела, то мы получим разницу, которая и будет равна количеству символов в имени, то есть I2-H2

Получаем итоговую формулу:

ПСТР(A2 ;H2+1 ;I2-H2 )


Приступаем к делению третьей части текста — Отчество

И снова функция =ПСТР(текст ; начальная_позиция ; число_знаков ), где

  1. текст — это тот же текст ФИО, в нашем примере это ячейка A2 ;
  2. начальная_позиция - Отчество у нас находится после 2-го пробелам, значит начальная позиция будет равна позиции второго пробела плюс один знак или I2+1 ;
  3. число_знаков — в нашем случае после Отчества никаких знаков нет, поэтому мы просто может взять любое число, главное, чтобы оно было больше возможного количества символов в Отчестве, я взял цифру с большим запасом — 50

Получаем функцию

ПСТР(A2 ;I2+1 ;50 )


Далее выделяем все три ячейки и протягиваем формулы вниз и получаем нужный нам результат. На этом можно закончить, а можно промежуточные расчеты позиции пробелов прописать в сами формулы деления текста. Это очень просто сделать. Мы видим, что расчет первого пробела находится в ячейке H2 - НАЙТИ(" ";A2;1) , а расчет второго пробела в ячейке I2 — НАЙТИ(" ";A2;H2 +1) . Видим, что в формуле ячейки I2 встречается H2 меняем ее на саму формулу и получаем в ячейке I2 вложенную формулу

Смотрим первую формулу выделения Фамилии и смотрим где здесь встречается H2 или I2 и меняем их на формулы в этих ячейках, аналогично с Именем и Фамилией

  • Фамилия =ПСТР(A2;1;H2 -1) получаем =ПСТР(A2;1;НАЙТИ(" ";A2;1) -1)
  • Имя =ПСТР(A2;H2 +1;I2 -H2 ) получаем =ПСТР(A2;НАЙТИ(" ";A2;1) +1;
    НАЙТИ(" ";A2;НАЙТИ(" ";A2;1)+1) -НАЙТИ(" ";A2;1) )
  • Отчество =ПСТР(A2;I2 +1;50) получаем =ПСТР(A2;НАЙТИ(" ";A2;НАЙТИ(" ";A2;1)+1) +1;50)

Теперь промежуточные вычисления позиции пробелом можно смело удалить. Это один из приемов, когда для простоты сначала ищутся промежуточные данные, а потом функцию вкладывают одну в другую. Согласитесь, если писать такую большую формулу сразу, то легко запутаться и ошибиться.

Надеемся, что данный пример наглядно показал вам, как полезны текстовые функции Excel для работы с текстом и как они позволяют делить текст автоматически с помощью формул однотипные данные. Если вам понравилась статья, то будем благодарны за нажатие на +1 и мне нравится. Подписывайтесь и вступайте в нашу группу вконтакте.

Пример 2. Как разделить текст по столбцам в Excel с помощью формулы

Рассмотрим второй пример, который так же очень часто встречался на практике. Пример похож предыдущий, но данных которые нужно разделить значительно больше. В этом примере я покажу прием, который позволит достаточно быстро решить вопрос и не запутаться.

Допустим у нас есть список чисел, перечисленных через запятую, нам необходимо разбить текст таким образом, чтобы каждое число было в отдельной ячейке (вместо запятых это могут быть любые другие знаки, в том числе и пробелы). То есть нам необходимо разбить текст по словам.


Напомним, что вручную (без формул) это задача очень просто решается с помощью , который мы уже рассматривали. В нашем же случае требуется это сделать с помощью формул.

Для начала необходимо найти общий разделить, по которому мы будет разбивать текст. В нашем случае это запятая, но например в первой задаче мы делили ФИО и разделитель был пробел. Наш второй пример более универсальный (более удобный при большом количестве данных), так например мы удобно могли бы делить не только ФИО по отдельным ячейкам, а целое предложение — каждое слово в отдельную ячейку. Собственно такой вопрос поступил в комментариях, поэтому было решено дополнить эту статью.

Для удобства в соседнем столбце укажем этот разделитель, чтобы не прописывать его в формуле а просто ссылаться на ячейку. Это так же позволит нам использовать файл для решения других задач, просто поменяв разделитель в ячейках.


Теперь основная суть приема.

Шаг 1 . В вспомогательном столбце находим позицию первого разделителя с помощью функции НАЙТИ. Описывать подробно функцию не буду, так как мы уже рассматривали ее раннее. Пропишем формулу в D1 и протянем ее вниз на все строки

НАЙТИ(B1;A1;1 )

То есть ищем запятую, в тексте, начиная с позиции 1


НАЙТИ($B1 ;$A1;D1+1 )

Во-первых: закрепим столбец искомого значения и текста, чтобы при протягивании формулы вправо ссылки на ячейки не сдвигалась. Для этого нужно написать доллар перед столбцом B и A — либо вручную, либо выделить A1 и B1, нажать три раза клавишу F4, после этого ссылки станут не относительными, а абсолютными.

Во-вторых: третий аргумент — начало позиции мы рассчитаем как позиция предыдущего разделителя (мы его нашли выше) плюс 1 то есть D1+1 так как мы знаем, что второй разделитель точно находится после первого разделителя и нам его не нужно учитывать.

Пропишем формулу и протянем ее вниз.


Шаг 3. Находимо позиции всех остальных разделителей. Для этого формулу нахождения второго разделителя (шаг 2) протянем вправо на то количество ячеек, сколько всего может быть отдельно разбитых значений с небольшим запасом. Получим все позиции разделителей. Там где ошибка #Знач означает что значения закончились и формула больше не находит разделителей. Получаем следующее


Шаг 4. Отделяем первое число от текст с помощью функции ПСТР.

ПСТР(A1;1 ;D1-1 )

Начальная позиция у нас 1 , количество знаков мы рассчитываем как позиция первого разделителя минус 1: D1-1 протягиваем формулу вниз

Шаг 5 . Находимо второе слово так же с помощью функции ПСТР в ячейке P1

ПСТР($A1;D1+1;E1-D1-1)

Начальная позиция второго числа у нас начинается после первой запятой. Позиция первой запятой у нас есть в ячейке D1, прибавим единицу и получим начальную позицию нашего второго числа.

Количество знаков это есть разница между позицией третьего разделителя и второго и минус один знак, то есть E1-D1-1

Закрепим столбец A исходного текста, чтобы он не сдвигался при протягивании формулы право.

Шаг 6 . Протянем формулу полученную на шаге 5 вправо и вниз и получим текст в отдельных ячейках.


Шаг 7. В принципе задача наша уже решена, но для красоты все в той же ячейке P1 пропишем формула отлавливающую ошибку заменяя ее пустым значением. Так же можно сгруппировать и свернуть вспомогательные столбцы, чтобы они не мешали. Получим итоговое решение задачи

ЕСЛИОШИБКА(ПСТР($A1;D1+1;E1-D1-1); "")


Примечание . Первую позицию разделителя и первое деление слова мы делали отлично от других и из-за этого могли протянуть формулу только со вторых значений. Во время написания задачи я заметил, что можно было бы упростить задачу. Для этого в столбце С нужно было прописать 0 значения первого разделителя. После этого находим значение первого разделителя

НАЙТИ($B1;$A1;C1+1)

а первого текста как

ПСТР($A1;C1+1;D1-C1-1)

После этого можно сразу протягивать формулу на остальные значения. Именно этот вариант оставляю как пример для скачивания. В принципе файлом можно пользоваться как шаблоном. В столбец «A» вставляете данные, в столбце «B» указываете разделитель, протягиваете формулы на нужное количество ячеек и получаете результат.

Внимание! В комментариях заметили, что так как в конце текста у нас нет разделителя, то у нас не считается количество символов от последнего разделителя до конца строки, поэтому последний разделенный текст отсутствует. Чтобы решить вопрос можно либо на первом шаге добавить вспомогательный столбец радом с исходным текстом, где сцепить этот текст с разделителем. Таким образом у нас получится что на конце текста будет разделитель, значит наши формулы посчитают его позицию и все будет работать.

Либо второе решение — это на шаге 3, когда мы составляем формулу вычисления позиций разделителей дополнить ее. Сделать проверку, если ошибка, то указываем заведомо большое число, например 1000.

ЕСЛИОШИБКА(НАЙТИ($B1;$A1;C1+1);1000)


Таким образом последний текст будет рассчитываться начиная от последней запятой до чуть меньше 1000 знаков, то есть до конца строки, что нам и требуется.

Оба варианта выложу для скачивания.

Скачать пример: (исправлено: доп поле)
Скачать пример: (исправлено: заведомо большое число)