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

Для примера рассмотрим данные CSV файла. Каждая подстрока в нем разделена символом «точка с запятой» и помещена в двойные кавычки. Вставьте их в любое место Вашей рабочей книги:

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

На экране будет отображено окно мастера распределения текста:

Весь процесс состоит из трех шагов.

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

Выберите пункт «С разделителями» и нажмите кнопку «Далее».

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

Обратите внимание на то, что если разделители идут подряд, то каждый из них образует новый столбец, т.е. 2 таких символа создают 1 пустой столбец, 3 – 2 и т.д. Чтобы избавиться от этого часто нужного действия достаточно поставить галочку на поле «Считать последовательные разделители одним».

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

Имейте в виду то, что символы-разделители и ограничители удаляются из содержимого разделенных данных.

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

Завершающим шагом является назначение форматирования новым колонкам и указания места для их расположения.

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

Если материалы office-menu.ru Вам помогли, то поддержите, пожалуйста, проект, чтобы мы могли развивать его дальше.

У Вас недостаточно прав для комментирования.

В этом курсе:

С помощью мастера распределения текста по столбцам текст, содержащийся в одной ячейке, можно разделить на несколько.

Выделите ячейку или столбец с текстом, который вы хотите разделить.

На вкладке Данные нажмите кнопку Текст по столбцам.

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

Выберите разделители для своих данных. Например, запятую и пробел. Данные можно предварительно просмотреть в окне Образец разбора данных.

Нажмите кнопку Далее.

Выберите значение в разделе Формат данных столбца или используйте то, которое Excel выберет автоматически.

В поле Поместить в выберите место на листе, где должны отображаться разделенные данные.

Нажмите кнопку Готово.

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.

  • Проблема экспорта поисковых запросов (ПЗ) из Google вебмастер
  • CSV с разделителем запятая в UTF-8
  • Проблема с кодировкой
  • Разделитель запятая в CSV
  • То, что помогло
  • Онлайн сервис для нормализации CSV-файлов
  • Подведём итоги
  • Проблема экспорта ПЗ из Google вебмастер

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

    Здесь же есть и экспорта данных в CSV-формате, с возможностью его открытия в Google Таблицы (онлайн аналог Excel) . Ищите кнопку «Загрузить эту таблицу». К слову, количество отображаемых запросов на странице не влияет на полноту экспортируемых данных.

    Проблема в том, что в CSV-файле используется разделитель запятой и кодировка UTF-8. Так что даже в Google Таблицы, вместо кириллицы, вы получите только набор вопросов.

    Другими словами, нам нужно изменить кодировку на ANSI. А для открытия файла CSV в Excel заменить и разделитель запятой (,) на символ точки с запятой (;) .

    CSV с разделителем запятая в UTF-8

    Проблема с кодировкой

    Проще всего решить проблему с кодировкой. Для этого вы можете использовать любой текстовый редактор с этой функцией, например Notepad++. Его вы можете скачать бесплатно на официальном сайте: unotepad-plus-plus.org. Далее запускаем редактор и открываем в нём наш CSV-файл, а потом кликаем пункт меню «Кодировки» и меняем на нужную, т.е. пункт «Преобразовать в ANSI».

    У меня на картинке показан обратный процесс: преобразования из ANSI в UTF-8 – но, думаю, вы это и сами заметилии, а принцип тот же.

    Разделитель запятая в CSV

    Теперь, что касается разделителя запятой. По сути, для Google Таблиц что-то менять не надо. Да и в англоязычной версии MS Excel это может прокатить, проверьте. Тем не менее, если нужна замена, то здесь следует учесть, что просто заменить запятую (,) на символ точки с запятой (;) не получится, т.к. в файле могут быть значения, содержащие этот символ. Они обычно помещены в кавычки. Например:

    значение,1,"значение, с запятой",

    По идее здесь должна помочь настройка самой операционной системы Windows: Пуск > Панель управления > Язык и региональные стандарты. На вкладке «Форматы» кликаем кнопку «Изменить этот формат…» В открывшемся окне, на вкладке «Числа» замените «Разделитель элементов списка» на нужный, т.е. символ точки с запятой (;) меняем на запятую (,) .

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

    То, что помогло

    Увы, но какой-то дополнительной обработки файлов с расширением .csv в MS Excel я не нашел. Тем не менее, есть возможность обработки, но только в том случае, если сменить расширение файла, например, на .txt . Так что меняем расширение файла и открываем его в Excel.

    Появится окно «Мастер текстов (импорт)». Здесь вы можете выбрать формат исходных данных, начальную строку импорта и кодировку файла (нам нужна 1251 : Cyrillic ) . К слову, почему нужно было менять кодировку, когда её можно выбрать в мастере? Потому, что кодировки UTF-8, по крайней мере у меня, здесь нету. Кликаем кнопку «Далее».

    На следующем шаге мы можем выбрать символ-разделитель, причем несколько. Ставим галочку «запятая» и убираем галочку «знак табуляции». Здесь же можно выбрать и символ ограничителя строк. Это тот, что используется для значений, в которых присутствуют спецсимволы (двойные кавычки, запятая, точка с запятой, новая строка и т.д.) . Вариант с двойной кавычкой, в моём случае, это то, что надо. Обратите внимание на поле «Образец разбора данных», данные стали таблицей. Кликаем кнопку «Далее».

    На последнем шаге можно указать формат данных столбцов, правда выбор здесь не велик: общий (по умолчанию) , текстовый, дата и пропустить столбец. Последний вариант представляется мне наиболее интересным, т.к. позволяет сразу исключить ненужные столбцы. Просто выберите соответствующий столбец и кликните для него вариант «пропустить столбец». Кликаем кнопку «Готово».

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

    Онлайн сервис для нормализации CSV-файлов

    Впрочем, все выше изложенные проблемы решает простой онлайн сервис Normalization CSV. Он позволяет менять кодировку и символ разделителя. Правда существует ограничение в 64 000 байтов (сколько это в Кб?) для загружаемого файла, но CSV-файлы обычно весят не очень много, должно хватить. Результат обработки выводится как обычный текстовый файл, его можно сохранить с расширением .csv .

    К слову, скрипт преобразовавает значение процентов, например: 95 % – в нужное значение для столбца «проценты» в Excel, т.е. делится на 100 и получаем число с плавающей запяток, например: 0,95 . Если нужны ещё какие-то преобразования: пишите, попробуем доработать.

    Ну, а если предложенный онлайн сервис вас не устраивает, вы всегда можете воспользоваться выше приведённой инструкцией.

    Подведём итоги

    Некоторые онлайн сервисы предоставляют возможность экспорта данных в просто и удобном CSV-формате. Как следует из названия, подразумевает использование в качестве разделителя символ запятой (,) . Однако, многие приложения трактуют этот формат несколько своевольно, что приводит к закономерным проблемам. К тому же сейчас всё более популярна кодировка UTF-8, в то время как Excel или Google Таблицы используют ANSI.

    Решить проблему с кодировкой поможет, к примеру, Notepad++, а для того, чтобы разобраться с разделителем, достаточно изменить расширение файла на .txt и воспользоваться мастером текстов в Excel. Впрочем, все эти задачи способен решить бесплатный онлайн сервис Normalization CSV, правда стоит учесть его ограничение на объём загружаемого файла. На этом у меня всё. Спасибо за внимание. Удачи!

    Короткая ссылка: http://goo.gl/rAe1Xb

    Сейчас в инете дофига различный csv конверторов, которые всё это понимают и настраивают. Да и софта такого рода хватает.

    23 января 2014 г., 13:21 Удалить комментарий

    @Максим безусловно, вариантов решения данной проблемы существует достаточно много. В тоже время, практика показывает, что люди склонный использовать то, что есть под рукой и чем оно проще тем лучше. В случае с Normalization CSV мы имеем не столько csv конвертор, сколько нормализатор, который работает исходя из особенностей экспорта данных онлайн сервисов, в частности Google инструмента для веб-мастеров.

    23 января 2014 г., 15:25 Удалить комментарий

    @Константин Кирилюк если судить по показателям соцкнопочек, то люди выбирают не самые простые решения и отдают предпочтение перекодированию, переименовыванию и мастертекстовованию 🙂

    29 января 2014 г., 19:10 Удалить комментарий

    @Максим ну, не всё так сразу. К тому же популяризацией своего сервиса я не занимался, да и не стремлюсь. несколько опасаюсь нагрузок. Так что пусть используют вот такие, далеко не простые решения, а кому надо могут воспользоваться и сервисом.

    30 января 2014 г., 10:42 Удалить комментарий

    Заметил траблу с Normalization CSV. Если в CSV файле присутствует символ бесконечности ∞ то на нём всё и стопорится, по крайней мере если делать смену кодировки из UTF-8 в ANSI.

    1 февраля 2014 г., 5:21 Удалить комментарий

    @Максим да, была такая проблема. Пытался и так и эдак, но пришлось заменить этот символ на знак вопроса. Это самый оптимальный вариант, который я вижу на данный момент. Как я понял проблема в iconv мутках.

    1 февраля 2014 г., 6:09 Удалить комментарий

    28 августа 2014 г., 11:52 Удалить комментарий

    Помимо ‘,’ в Разделитель элементов списка в разделе Числа — Разделитель целой и дробной части поставьте ‘.’ и все заработает

    3 сентября 2014 г., 11:52 Удалить комментарий

    Константин, большое спасибо

    25 октября 2015 г., 22:23 Удалить комментарий

    Помимо ‘,’ в Разделитель элементов списка в разделе Числа — Разделитель целой и дробной части поставьте ‘.’ и все заработает

    вот это очень помогло. спасибо анониму от анонима! большое спасибо!

    12 августа 2016 г., 16:36 Удалить комментарий

    чувак, отличная публикация. благодарю

    1 сентября 2016 г., 18:31 Удалить комментарий

    Огромное спасибо, статья очень выручила! 🙂

    25 сентября 2016 г., 12:27 Удалить комментарий

    15 декабря 2016 г., 22:31 Удалить комментарий

    Спасибо за статью, познавательно!
    Поделюсь решением, которое нашел для себя — бесплатная утилита grepWin
    Осуществляет поиск и замену текста по многим файлам одновременно. В запросах на поиск и замену можно использовать регулярные выражения.
    Если файлов много ей просто цены нет — сложил в одну папочку (можно с подпапочками при желании)все файлы которые нужно править, запускаешь grepWin из контекстного меню этой папки, и меняй что душе угодно.
    Я лично стабильно имею дело с файлами статистики, собираемыми командой sar на linux. Один раз написал нужные тебе регэкспы (с непривычки правда не сразу получится, рекомендую попрактиковаться на regex101.com) и любое количество файлов прогоняешь за секунды/пару минут (ну тут смотря по размеру файлов и сложности изменений, может и дольше занять)
    Поделюсь своими регулярками:
    приходят файлы с колонками цифр, колонки разделены пробелами. Чтобы открыть в экселе надо серию пробелов заменить на ;
    Искать: s <2,>Заменить на: ;
    Замена десятичной точки на запятую:
    Искать (d).(d) Заменить на: $1,$2
    Не забываем выбрать опцию RegExp search сверху от поля для поиска.

    22 февраля 2017 г., 12:05 Удалить комментарий

    Помог понять (потому что подробно изложил)! Спасибо.

    7 мая 2017 г., 7:32 Удалить комментарий

    В Notepad++ я записал макрос с такими действиями:
    1. Найти все запятые , и заменить на точку с запятой ;
    2. Найти все точки . и заменить их на запятые ,
    3. Сохранить файл
    Теперь любой "некирилличный" CSV преобразовывается одной командой и потом нормально открывается в Excel без изменений региональных настроек.