Как из Excel сделать текстовый файл: все способы экспорта данных

Работа с данными в Microsoft Excel или Google Sheets часто требует их преобразования в текстовые форматы — будь то для импорта в другую программу, обработки скриптами или архивирования. Текстовые файлы (.txt, .csv) универсальны: их открывает любой редактор, они занимают меньше места и не зависят от версий ПО. Но как перенести таблицу в текстовый документ без потери структуры?

В этой статье вы найдёте 5 проверенных методов конвертации — от стандартного экспорта через меню Excel до автоматизации с помощью Power Query и VBA. Мы разберём нюансы выбора разделителей (табуляция, запятая, точка с запятой), проблемные моменты с кодировкой (UTF-8 vs ANSI), а также покажем, как сохранить формулы или только их результаты. Особое внимание уделим типичным ошибкам — например, когда числа превращаются в даты или русские буквы отображаются кракозябрами.

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

Зачем конвертировать Excel в текстовый файл?

Текстовые форматы (.txt, .csv, .tsv) кажутся простыми, но их универсальность делает их незаменимыми в ряде сценариев:

  • 📤 Импорт в базы данныхMySQL, PostgreSQL или часто требуют данные в виде CSV для массовой загрузки.
  • 🤖 Автоматизация — скрипты на Python, Bash или PowerShell проще обрабатывают текстовые файлы, чем бинарные .xlsx.
  • 📊 Аналитика — инструменты вроде Google Data Studio или Tableau могут напрямую подключаться к CSV.
  • 📱 Мобильные устройства — многие приложения на Android/iOS не умеют открывать XLSX, но легко читают TXT.
  • 🔒 Архивирование — текстовые файлы меньше весят и дольше хранят данные без риска повреждения.

При этом важно понимать ограничения: текстовые форматы не сохраняют форматирование ячеек (цвета, шрифты), объединённые ячейки, формулы (только их результаты) и некоторые специальные символы. Если эти данные критичны, рассмотрите альтернативы — например, экспорт в .pdf или .html.

📊 Для чего вам чаще всего нужен экспорт Excel в текст?
Импорт в базу данных
Автоматизация скриптами
Перенос на другое устройство
Архивирование данных
Другое

Способ 1: Стандартный экспорт через «Сохранить как»

Самый простой метод — использовать встроенную функцию Excel. Он подходит для одноразовых задач и не требует дополнительных навыков.

  1. Откройте файл в Microsoft Excel (версии 2010–2023 или Excel 365).
  2. Перейдите в меню Файл → Сохранить как.
  3. В выпадающем списке «Тип файла» выберите:
    • Текстовый файл (с разделителями табуляции) (*.txt) — для столбцов, разделённых табуляцией.
    • CSV (разделители — запятые) (*.csv) — для запятых в качестве разделителя.
    • CSV (Macintosh) (*.csv) — если файл будет открываться на Mac.
    • CSV (MS-DOS) (*.csv) — для устаревших систем.
  • Нажмите «Сохранить». Если появится предупреждение о несовместимости форматов, подтвердите действие.
  • ⚠️ Внимание: При сохранении в CSV Excel по умолчанию использует кодировку ANSI, что может искажать русские символы. Чтобы этого избежать, после экспорта откройте файл в Блокноте и сохраните его заново с кодировкой UTF-8.

    ☑️ Проверка перед экспортом

    Выполнено: 0 / 4

    Способ 2: Экспорт с настройкой разделителей

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

    Для этого:

    1. Выделите диапазон ячеек, который нужно экспортировать.
    2. Скопируйте его (Ctrl+C).
    3. Откройте Блокнот или другой текстовый редактор (например, Notepad++).
    4. Вставьте данные (Ctrl+V).
    5. Используйте функцию «Заменить» (Ctrl+H), чтобы заменить табуляции или запятые на нужный разделитель (например, ; или |).
    6. Сохраните файл с расширением .txt или .csv.

    Пример замены в Notepad++:

    Найти:    \t
    

    Заменить: ;

    Режим: Расширенный

    Как узнать, какой разделитель используется в файле?

    Откройте CSV-файл в Блокноте. Если данные в одной строке разделены запятыми — это стандартный CSV. Если пробелами — скорее всего, табуляция. Для точного определения используйте HEX-редактор или команду file в Linux.

    Способ 3: Автоматизация через Power Query

    Power Query — мощный инструмент Excel для трансформации данных. Он позволяет не только экспортировать таблицы в текстовые файлы, но и предварительно очищать данные, менять форматы или объединять несколько источников.

    Инструкция:

    1. Перейдите на вкладку ДанныеПолучить данныеИз других источниковПустой запрос.
    2. В редакторе Power Query введите команду:
      = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content]

      (замените Таблица1 на имя вашей таблицы).

    3. Нажмите ГотовоЗакрыть и загрузить в....
    4. В окне импорта выберите Только создать подключение.
    5. Снова перейдите в ДанныеПолучить данныеЗапустить запрос.
    6. В результатах нажмите правой кнопкой на запрос → Экспортировать данные → выберите формат CSV или TXT.

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

    Способ 4: Макросы VBA для пакетного экспорта

    Если вам нужно регулярно конвертировать десятки файлов, ручной экспорт станет утомительным. VBA (Visual Basic for Applications) позволяет автоматизировать процесс. Ниже приведён скрипт, который сохраняет все листы текущей книги в отдельные CSV-файлы:

    Sub ExportSheetsToCSV()
    

    Dim ws As Worksheet

    Dim csvPath As String

    csvPath = "C:\Export\" ' Укажите папку для сохранения

    For Each ws In ThisWorkbook.Worksheets

    ws.Copy

    ActiveWorkbook.SaveAs csvPath & ws.Name & ".csv", xlCSV

    ActiveWorkbook.Close False

    Next ws

    MsgBox "Экспорт завершён!", vbInformation

    End Sub

    Как использовать:

    1. Нажмите Alt+F11, чтобы открыть редактор VBA.
    2. Вставьте код в новый модуль (Insert → Module).
    3. Измените путь C:\Export\ на свою папку.
    4. Запустите макрос (F5).
    5. ⚠️ Внимание: Макрос перезапишет файлы с одинаковыми именами без предупреждения. Перед запуском убедитесь, что в папке назначения нет важных данных, или добавьте в код проверку на существование файла.

      Метод Скорость Сохраняет формулы Поддерживает UTF-8 Автоматизация
      Сохранить как... ⭐⭐ ❌ (только значения) ❌ (только ANSI)
      Копирование в Блокнот ✅ (при ручном сохранении)
      Power Query ⭐⭐⭐
      VBA ⭐⭐⭐⭐ ✅ (при настройке)

      Способ 5: Онлайн-конвертеры и сторонние программы

      Если у вас нет Excel или нужно конвертировать файлы на Mac/Linux, можно воспользоваться онлайн-сервисами или специализированными программами. Популярные варианты:

      • 🌐 Online-Convert (site) — поддерживает XLSX → TXT/CSV, настройки разделителей и кодировки.
      • 🖥️ LibreOffice Calc — бесплатный аналог Excel, экспортирует в CSV с выбором параметров.
      • 📁 Pandas (Python) — для программистов: библиотека pandas позволяет точно контролировать экспорт:
        import pandas as pd
        

        df = pd.read_excel('data.xlsx')

        df.to_csv('output.csv', sep=';', encoding='utf-8', index=False)

      • 🔄 Zamzar — конвертирует до 50 файлов одновременно, но требует email для отправки результата.

      ⚠️ Внимание: Онлайн-сервисы загружают ваши данные на свои серверы. Не используйте их для конфиденциальной информации (персональные данные, финансовые отчёты). Для таких случаев лучше воспользоваться офлайн-инструментами вроде LibreOffice или Pandas.

      Типичные ошибки и как их избежать

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

      • 🗃️ Искажение русского текста — возникает из-за неправильной кодировки. Решение: сохраните файл в Блокноте как UTF-8 или используйте Notepad++ для конвертации.
      • 📅 Даты превращаются в числаExcel хранит даты как числовые значения. Решение: предварительно отформатируйте столбец как текстовый (Формат ячеек → Текстовый).
      • 🔢 Потеря ведущих нулей — например, номер 00123 становится 123. Решение: добавьте апостроф перед числом ('00123) или используйте текстовый формат.
      • 📊 Объединённые ячейки разбиваются — CSV не поддерживает объединения. Решение: разделите данные по отдельным ячейкам перед экспортом.
      • 🔄 Формулы экспортируются как текст — если нужно сохранить формулы, экспортируйте в .xlsx или используйте VBA для извлечения формул в текстовый файл.

    Если после экспорта данные в CSV отображаются в одной колонке, проверьте разделитель. Например, в Excel для Европы по умолчанию используется ; вместо ,. Чтобы это исправить:

    1. Откройте CSV в Excel через Данные → Из текста.
    2. На шаге 2 мастера импорта выберите нужный разделитель.
    3. Нажмите «Готово».

    FAQ: Частые вопросы по конвертации Excel в текст

    Можно ли экспортировать только выделенный диапазон, а не весь лист?

    Да. Выделите нужные ячейки, скопируйте их (Ctrl+C), вставьте в Блокнот и сохраните как .txt или .csv. Альтернативно в Excel можно создать именованный диапазон и экспортировать только его через Power Query.

    Почему при открытии CSV в Excel числа отображаются с экспонентой (например, 1.23E+10)?

    Это происходит из-за автоматического форматирования Excel. Чтобы увидеть полное число:

    1. Выделите столбец с данными.
    2. Нажмите правой кнопкой → Формат ячеек → выберите Текстовый.
    3. Обновите данные (например, нажмите F2 + Enter на любой ячейке).

    Чтобы избежать этого при экспорте, сохраняйте числа в текстовом формате или используйте кавычки ("1234567890").

    Как экспортировать данные с сохранением формул, а не их значений?

    Стандартный экспорт в CSV/TXT сохраняет только результаты вычислений. Чтобы экспортировать формулы:

    1. Создайте копию листа (ПКМ на листе → Переместить/скопировать → Создать копию).
    2. Выделите все ячейки с формулами (Ctrl+G → Выделить → Формулы).
    3. Нажмите Ctrl+H, найдите = и замените на = (это обновит ссылки).
    4. Скопируйте формулы как текст (Формат ячеек → Текстовый перед копированием).
    5. Вставьте в текстовый редактор и сохраните.

    Для автоматизации используйте VBA-скрипт, который извлекает формулы из ячеек:

    Sub ExportFormulas()
    

    Dim cell As Range

    For Each cell In Selection

    cell.Value = "'" & cell.Formula

    Next cell

    End Sub

    Можно ли конвертировать Excel в текстовый файл на смартфоне?

    Да, с помощью мобильных приложений:

    • Excel для Android/iOS — поддерживает экспорт в CSV через Файл → Экспортировать.
    • Google Sheets — откройте файл, нажмите ⋮ → Экспорт → CSV.
    • OfficeSuite — позволяет сохранять листы в TXT с настройкой разделителей.

    Ограничение: на мобильных устройствах меньше настроек кодировки, поэтому для кириллицы лучше использовать UTF-8 и проверять результат.

    Как автоматизировать экспорт новых данных из Excel в CSV каждый день?

    Для этого подойдёт комбинация Power Query и Планировщика задач Windows:

    1. Создайте запрос в Power Query, который загружает данные из вашего источника (например, базы данных или другого файла).
    2. Настройте экспорт результата в CSV (как описано в Способе 3).
    3. Сохраните файл Excel с включённой опцией Обновить при открытии.
    4. Создайте задачу в Планировщике задач, которая будет открывать файл ежедневно (например, в 6:00).

    Для более гибкой автоматизации используйте Python-скрипт с библиотекой openpyxl или pandas, который можно запускать по расписанию через cron (Linux/macOS) или Планировщик (Windows).