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

Решение одним словом: транспонирование (transpose). Дальше ищущий может гуглить и найти данную статью.

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

  1. Специальная вставка

Выделяем один столбец или строку, копируем. В новом месте или листе, где будет располагаться транспонированная таблица, кликаем правой кнопкой «Специальная вставка».

Ставим галочку транспонировать. При использовании такого транспонирования «слетают» все формулы, все связи между таблицами. Поэтому, скорее всего нам также понадобится перенести только значения (или значения и форматы) чисел.

image

Из спорных преимуществ: сохранится все оформление ячеек, что требуется не всегда. Но главный недостаток способа – довольно трудоемкий процесс. Если строк и столбцов больше 100? Сто раз переносить данные построчно?

  1. Используем формулу

Гораздо более изящное решение.

Функция АДРЕС(номер_строки; номер_столбца) отдает ссылку (адрес) ячейки по 2 числам, где первое — номер строки, второе — номер столбца. Т.е. запись =АДРЕС(1;1) вернет нам ссылку на ячейку А1.

С помощью функций СТРОКА(ячейка) и СТОЛБЕЦ(ячейка) меняем порядок выдачи у функции АДРЕС — не (строка, столбец), а (столбец, строка).

В текущем виде формула =АДРЕС(СТОЛБЕЦ(A1);СТРОКА(A1)) вернет текст $A$1, надо преобразовать результат в ссылку, обернув все выражение в функцию ДВССЫЛ(ссылка_в_виде_текста).

Решение:

=ДВССЫЛ(АДРЕС(СТОЛБЕЦ(A1);СТРОКА(A1)))

В английском Excel:

=INDIRECT(ADDRESS(COLUMN(A1),ROW(A1)))

Применив формулу для ячейки А9 (в примере на картинке), растягиваем ее на остальные. Результат:

image

И сразу можно увидеть 2 небольших минуса этого способа:

  • Пустые ячейки заполняются нулями, правим вручную;
  • Формат ячеек – числовой, так Даты тоже нужно будет преобразовывать вручную.

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

  1. Сводная таблица

Даже формула – не совсем то, что надо. Мы преобразовываем данные туда-сюда, хотя нам всего-то требуется поработать с самой таблицей.

Самое рациональное решение – сводная таблица. Нам понадобиться поправить исходные данные, у каждого столбца должен быть заголовок!

Выделяем таблицу, выбираем в меню Вставка – Сводная таблица. Указываем, куда вставить новую таблицу (можно на новый лист или куда-нибудь на текущий), график – да/нет. Ок. В настройках меняем местами блоки названия строк и названия столбцов. Результат:

51761 10.11.2012 Скачать пример

Итак, имеем столбец с данными, которые надо разделить на несколько отдельных столбцов. Самые распространенные жизненные примеры:

  • ФИО в одном столбце (а надо — в трех отдельных, чтобы удобнее было сортировать и фильтровать) 
  • полное описание товара в одном столбце (а надо — отдельный столбец под фирму-изготовителя, отдельный — под модель для построения, например, сводной таблицы)
  • весь адрес в одном столбце (а надо — отдельно индекс, отдельно — город, отдельно — улица и дом)
  • и т.д.

Поехали..

Способ 1. Текст по столбцам

Выделите ячейки, которые будем делить и выберите в меню Данные — Текст по столбцам (Data — Text to columns). Появится окно Мастера разбора текстов:

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

На втором шаге Мастера, если мы выбрали формат с разделителями (как в нашем примере) — необходимо указать какой именно символ является разделителем:

Если в тексте есть строки, где зачем-то подряд идут несколько разделителей (несколько пробелов, например), то флажок Считать последовательные разделители одним (Treat consecutive delimiters as one) заставит Excel воспринимать их как один.

Выпадающий список Ограничитель строк (Text Qualifier) нужен, чтобы текст заключенный в кавычки (например, название компании «Иванов, Манн и Фарбер») не делился по запятой внутри названия.

И, наконец, на третьем шаге для каждого из получившихся столбцов, выделяя их предварительно в окне Мастера, необходимо выбрать формат:

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

Кнопка Подробнее (Advanced) позволяет помочь Excel правильно распознать символы-разделители в тексте, если они отличаются от стандартных, заданных в региональных настройках.

Если хочется, чтобы такое деление производилось автоматически без участия пользователя, то придется использовать небольшую функцию на VBA, вставленную в книгу. Для этого открываем редактор Visual Basic:

  • в Excel 2003 и старше — меню Сервис — Макрос — Редактор Visual Basic (Tools — Macro — Visual Basic Editor)
  • в Excel 2007 и новее — вкладка Разработчик — Редактор Visual Basic (Developer — Visual Basic Editor) или сочетание клавиш Alt+F11

Вставляем новый модуль (меню Insert — Module) и копируем туда текст вот этой пользовательской функции:

Function Substring(Txt, Delimiter, n) As String  Dim x As Variant      x = Split(Txt, Delimiter)      If n > 0 And n - 1 <= UBound(x) Then          Substring = x(n - 1)      Else          Substring = ""      End If  End Function  </pre>    Теперь можно найти ее в списке функций в категории Определенные пользователем (User Defined) и использовать со следующим синтаксисом:      =SUBSTRING(Txt; Delimeter; n)      где    Txt - адрес ячейки с текстом, который делим Delimeter - символ-разделитель (пробел, запятая и т.д.) n - порядковый номер извлекаемого фрагмента     Например:    

Способ 3. Разделение слипшегося текста без пробелов

Тяжелый случай, но тоже бывает. Имеем текст совсем без пробелов, слипшийся в одну длинную фразу (например ФИО «ИвановИванИванович»), который надо разделить пробелами на отдельные слова. Здесь может помочь небольшая макрофункция, которая будет автоматически добавлять пробел перед заглавными буквами. Откройте редактор Visual Basic как в предыдущем способе, вставьте туда новый модуль и скопируйте в него код этой функции:

Function CutWords(Txt As Range) As String      Dim Out$      If Len(Txt) = 0 Then Exit Function      Out = Mid(Txt, 1, 1)            For i = 2 To Len(Txt)          If Mid(Txt, i, 1) Like "[a-zа-я]" And Mid(Txt, i + 1, 1) Like "[A-ZА-Я]" Then              Out = Out & Mid(Txt, i, 1) & " "          Else              Out = Out & Mid(Txt, i, 1)          End If      Next i      CutWords = Out  End Function  

Теперь можно использовать эту функцию на листе и привести слипшийся текст в нормальный вид:

 Ссылки по теме

Что делать, если нужно разделить один столбец с данными (например, ФИО) на несколько в таблице Excel 2007? См. ниже)

В созданной Вами таблице выделите ячейки, которые необходимо разделить, зайдите на вкладку «Данные» и нажмите кнопку «Текст по столбцам». См. ниже

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

После этого у Вас откроется Шаг 2 Мастера текстов. Тут Вам нужно выбрать, какой именно символ у Вас является разделителем (в нашем случае — пробел). Ставите галочку напротив «пробел» и жмете «Далее».

Далее у Вас откроется окно третьего шага Мастера тексов. Здесь Вам необходимо поочередно выделяя столбцы определить для них формат (общий, текстовый, дата). В нашем случае – текстовый. Далее жмете «Готово».

В результате имеем:

Гототво! У нас с Вами получилось разбить один столбец с данными на три столбца в Excel 2007)

Все видеоНовые видеоПопулярные видеоКатегории видео

Авто Видео-блоги ДТП, аварии Для маленьких Еда, напитки
Животные Закон и право Знаменитости Игры Искусство
Комедии Красота, мода Кулинария, рецепты Люди Мото
Музыка Мультфильмы Наука, технологии Новости Образование
Политика Праздники Приколы Природа Происшествия
Путешествия Развлечения Ржач Семья Сериалы
Спорт Стиль жизни ТВ передачи Танцы Технологии
Товары Ужасы Фильмы Шоу-бизнес Юмор

Главные новости Оперативно-профилактическое мероприятие «Должник»»>Сотрудники полиции устанавливают собственников гаражей по адресу Парковая, 14″>Позвонили от имени банка и пугают оформлением кредита на Ваше имя? – немедленно положите трубку. Вы имеете дело с мошенниками»>Полицейские Верхней Салды напоминают: находясь в садах, на участках, на отдыхе — необходимо следить за личными вещами!»>Сотрудники полиции Верхней Салды раскрыли серию краж прессованного картона из магазинов»>Перекрытие дорог 12.06.2021″>В рамках профилактической операции «Нелегальный мигрант» выявлено 23 факта нарушений миграционного законодательства»>Профилактическое мероприятие «Безопасная дорога»»>С наступлением лета сотрудники полиции усилили контроль за безопасностью несовершеннолетних»>Сотрудники ГИБДД выясняют обстоятельства ДТП на автодороге «Нижняя Салда – д. Медведево», в результате которого пострадал человек»> Покупка сток одежды для мужчин оптом»>Лучшие комедии 2021 года по мнению зрителей»>Металлопрокат и сфера его использования в повседневной жизни»>Реконструкция и реновация зданий»>Свято-Троице-Сергиева Лавра»>Как отличить оригинальные запчасти от подделки?»>Приложение Google Play Market»>The Witcher 3: Wild Hunt Прохождение — Дружелюбный Новиград #23″>Деятельность одного из подразделений Белгородского линейного отдела проверили общественники»>Как пробить финансовый потолок? Как пробить свой финансовый потолок и заработать нужную сумму денег?»> Склад ответственного хранения»>Фторопластовые втулки ф4, ф4К20 куплю по России неликвиды, невостребованные»>Стержень фторопластовый ф4, ф4к20 куплю по России излишки, неликвиды»>Куплю кабель апвпу2г, ввгнг-ls, пвпу2г, пввнг-ls, пвкп2г, асбл, сбшв, аабл и прочий по России»>Куплю фторопласт ФУМ лента, ФУМ жгут, плёнка фторопластовая неликвиды по России»>Силовой кабель закупаем в Екатеринбурге, области, по РФ неликвиды, излишки»>Фторопластовая труба ф4, лента ф4ПН куплю с хранения, невостребованную по РФ»>Фторопластовый порошок куплю по всей России неликвиды, с хранения»>Куплю провод изолированный СИП-2, СИП-3, СИП-4, СИП-5 невостребованный, неликвиды по РФ»>Фторкаучук скф-26, 26 ОНМ, скф-32 куплю по всей России неликвиды, невостребованный»> Фото laribalashova»>Фото Vladimir Vasin»>Фото Аля М»>Фото Светлана Латифов»>Фото Маго Мед»>Фото Сергей»>Фото Ольга Глазачева (Коростелева)»>Фото magomed03255@gmail.com»>Фото tamirumarov80″>Фото Елена Нестерова (Солодовникова»> наружная реклама 9 мин. назад мешки под глазами 16 мин. назад Популярная пекарня Хорс 29 мин. назад Цветы 33 мин. назад Как избавиться от запора быстро и эффективно 44 мин. назад Курсы 52 мин. назад труба из нержавейки 1 ч. 19 мин. назад Лингафонный кабинет 1 ч. 26 мин. назад Гидроизоляция полимочевиной 1 ч. 51 мин. назад Сериалы 1 ч. 58 мин. назад Последние комментарии Сергей Эти 3 техники помогают мне когда я напряжен, в основном на работе. Использую их на обеде. Случайно наткнулся на статью и попробо… 10 ч. 5 мин. назад aresfok Приветствуем вас на страницах нашего туристического портала Gidlite.ru, посвящённым отпуску. Очень важно не только работать, но … 14 ч. 5 мин. назад Анна Волкова Как оказалось не такая-уж и простая стала задача: в кратчайшие сроки найти работу вебкам моделью на дому. Гдето платят сущие коп… Вчера, 13:44:29 07072016uva Холодильник должен быть вместительным, не шумным и надежным. Стоит обратить внимание на зарекомендовавшие себя торговые марки. Н… 14 июня 2021 г. 16:55:19 07072016uva Холодильник должен быть вместительным, не шумным и надежным. Стоит обратить внимание на зарекомендовавшие себя торговые марки. Н… 11 июня 2021 г. 21:32:51 bakir7458 Выбирать нужно проверенные бренды. Даже если дороговато, но зато надежно… 11 июня 2021 г. 21:11:19 rom kov Естественно, мониторинг цен необходим, чтобы, исходя из этого, назначать свою цену на товары или услуги, если такая возможность … 11 июня 2021 г. 2:29:25 acercool Мониторинг цен в бизнесе — это конечно очень важный процесс. Тут всегда надо держать « ушки на макушке », ведь конкуренты, понят… 10 июня 2021 г. 14:40:20 07072016uva Цены мониторить очень важно, что бы не допускать демпинга и завышения. Что бы все слои населения имели доступ ко всем категориям… 10 июня 2021 г. 13:30:51 Хронос Согласен с автором статьи и считаю, что эта тема действительно имеет место быть в наше время! Но при прочтении статьи у меня сфо… 10 июня 2021 г. 12:44:00

  • Вы здесь:  
  • Главная image
  • Книги image
  • Основы Excel image
  • Как разделить текст по столбцам?
Информация о материале
Категория: Основы Excel
Опубликовано: 01 августа 2015

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

image

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

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

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

image

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

image

Нажатие на кнопку далее приведет к отображению следующего экрана мастера текстов.

image

На этом этапе для каждого столбца можно установить формат данных, а также указать ячейку/диапазон ячеек для вставки разделенных значений. После этого нажимается кнопка «Готово».

Другие материалы по теме:

  • Назад

Оцените статью
Рейтинг автора
5
Материал подготовил
Илья Коршунов
Наш эксперт
Написано статей
134
А как считаете Вы?
Напишите в комментариях, что вы думаете – согласны
ли со статьей или есть что добавить?
Добавить комментарий