17

Разделение одного столбца на несколько в Excel (3 способа)

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

К счастью, Microsoft Excel предоставляет несколько встроенных инструментов для этого, а если вы работаете с большими или повторяющимися объёмами данных, процесс можно автоматизировать с помощью Python. В этом руководстве мы подробно рассмотрим оба подхода — использование функции Text to Columns, формул и сценария на Python с библиотекой Free Spire.XLS.

Содержание

  • Почему стоит разделять данные на несколько столбцов

  • Преобразование текста в отдельные столбцы в Excel

  • Разделение текста с помощью формул Excel

  • Автоматическое разделение с помощью Python

  • Заключение

Почему стоит разделять данные на несколько столбцов

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

  • Разделение имён: отделить имя от фамилии.

  • Разделение адресов: выделить улицу, город и почтовый индекс.

  • Извлечение кодов или категорий: выделить идентификаторы или названия категорий.

  • Подготовка данных к анализу: упростить фильтрацию и сортировку.

Проще говоря, это превращает неструктурированный текст в аккуратный формат, готовый для отчётов, автоматизации или анализа.

Метод 1. Преобразование текста в отдельные столбцы в Microsoft Excel

Встроенная функция Text to Columns — это самый простой способ разделить текст без формул или кода.

Шаги:

  1. Выделите ячейки или столбец с текстом.

  2. Перейдите в Data > Text to Columns.

  3. В мастере выберите Delimited > Next.

  4. Укажите разделители (например, запятая или пробел) и просмотрите результат.

  5. Нажмите Next.

  6. Укажите место, куда вставить разделённые данные.

  7. Нажмите Finish.

💡 Совет: можно использовать несколько разделителей одновременно (например, запятую и пробел), чтобы обработать данные вроде "John, Smith" или "John Smith".

Метод 2. Использование формул Excel для динамического разделения текста

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

TEXTSPLIT() (доступна в Excel 2021 и Excel 365):

=TEXTSPLIT(A1, ",")

Эта формула разделяет текст в ячейке A1 по запятой и автоматически размещает части в соседних ячейках.

Метод 3. Разделение одного столбца на несколько с помощью Python

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

Для этого подойдёт библиотека Free Spire.XLS for Python — простой и мощный API для работы с Excel-файлами.

Перед запуском кода установите библиотеку из PyPI:

pip install spire.xls.free

Пример кода

from spire.xls import *

from spire.xls.common import *

# === КОНФИГУРАЦИЯ ===

inputFile = "C:/Users/Administrator/Desktop/input.xlsx"

outputFile = "MultipleColumns.xlsx"

# Укажите разделитель (например, ',' для запятой)

delimiter = ','

# === ЗАГРУЗКА КНИГИ ===

workbook = Workbook()

workbook.LoadFromFile(inputFile)

sheet = workbook.Worksheets[0]

# === РАЗДЕЛЕНИЕ ДАННЫХ ===

for i in range(1, sheet.LastRow + 1):

text = sheet.Range[i, 1].Text.strip()

if text:

splitText = text.split(delimiter)

for j, value in enumerate(splitText, start=2):

sheet.Range[i, j].Text = value.strip()

# === ФОРМАТИРОВАНИЕ И СОХРАНЕНИЕ ===

sheet.SetColumnWidth(2, 14)

sheet.DeleteColumn(1)

workbook.SaveToFile(outputFile, ExcelVersion.Version2013)

workbook.Dispose()

print(f"Данные успешно разделены по разделителю '{delimiter}' и сохранены как '{outputFile}'.")

Как это работает:

  • delimiter определяет символ-разделитель (запятая, пробел, табуляция и т. д.).

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

  • После обработки файл сохраняется как MultipleColumns.xlsx.

Этот подход особенно полезен для:

  • больших или повторяющихся наборов данных;

  • автоматизации ETL-задач (Extract, Transform, Load);

  • интеграции Excel-операций в конвейеры данных.

Заключение

Разделение одного столбца на несколько помогает превратить неструктурированные данные в организованный набор, готовый к анализу.

  • Excel предлагает быстрые и понятные методы — Text to Columns и формулы.

  • Python обеспечивает масштабируемость и автоматизацию при работе с большими объёмами данных.

Будь вы аналитиком или разработчиком, овладение этими приёмами поможет поддерживать данные в чистоте и порядке.

Программирование на python

929 постов11.9K подписчиков

Правила сообщества

Публиковать могут пользователи с любым рейтингом. Однако!


Приветствуется:

• уважение к читателям и авторам

• конструктивность комментариев

• простота и информативность повествования

• тег python2 или python3, если актуально

• код публиковать в виде цитаты, либо ссылкой на специализированный сайт


Не рекомендуется:

• допускать оскорбления и провокации

• распространять вредоносное ПО

• просить решить вашу полноценную задачу за вас

• нарушать правила Пикабу