Гид по технологиям

Как разбить большой CSV или Excel‑файл на несколько меньших файлов

9 min read Excel Обновлено 01 Jan 2026
Как разбить большой CSV/Excel‑файл на несколько файлов
Как разбить большой CSV/Excel‑файл на несколько файлов

множество чисел в электронных таблицах (3D‑рендер)

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

Зачем делить большой CSV на несколько файлов?

Возможно, вы спросите: зачем вообще делить большой Excel или CSV? Дело в том, что Excel имеет ограничение по строкам — 1 048 576 строк на лист. Это много, но при работе с экспортами баз, рассылками или логами вы очень быстро можете достичь этого предела.

Например, при маркетинговой рассылке вы можете импортировать CSV с миллионами адресов. Справляться с таким файлом в Excel неудобно и рискованно. Аналогично, кто‑то может прислать CSV, который уже превышает лимит Excel. В таких случаях полезно заранее разбить файл на более мелкие части.

Если у вас нет подходящего примера для практики, в статье использовался открытый набор данных COVID‑19 Open Research Dataset, который можно скачать и использовать для тестов.

Какими способами можно разбить CSV — обзор

  • Использовать программы‑разделители CSV
  • Написать пакетный .bat‑файл (Windows)
  • Запустить PowerShell‑скрипт (Windows)
  • Загружать через Power Pivot и работать с данными в модели (не разбивает файл, но обходит лимит)
  • Онлайн‑сервисы, например Split CSV

Ниже — подробные инструкции по каждому из подходов, а также дополнительные рекомендации: когда метод не подойдёт, чек‑листы по ролям, мини‑методология выбора и вопросы безопасности.


1. Разделение CSV с помощью программы

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

Free Huge CSV Splitter

интерфейс программы для разделения CSV

Free Huge CSV Splitter — базовый инструмент. Укажите CSV, задайте количество строк на файл и нажмите Split File (Разбить файл). Вводите желаемый размер фрагмента по строкам, программа создаст нужное количество файлов.

CSV Splitter

разделение большого CSV с помощью программы

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

Советы по использованию программ:

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

2. Использование пакетного файла (.bat)

Пакетный скрипт полезен, если вы хотите автоматизировать разбиение и не устанавливать дополнительный софт. Ниже — готовый пример. Перед запуском отредактируйте переменные вверху.

        `@echo off  
  
setlocal ENABLEDELAYEDEXPANSION  
  
REM Edit this value to change the name of the file that needs splitting. Include the extension.  
  
SET BFN=HCAHPSHospital.csv  
  
REM Edit this value to change the number of lines per file.  
  
SET LPF=2500  
  
REM Edit this value to change the name of each short file. It will be followed by a number indicating where it is in the list.  
  
SET SFN=HosptialSplitFile  
  
REM Do not change beyond this line.  
  
SET SFX=%BFN:~-3%  
  
SET /A LineNum=0  
  
SET /A FileNum=1  
  
For /F "delims==" %%l in (%BFN%) Do (  
  
SET /A LineNum+=1  
  
echo %%l >> %SFN%!FileNum!.%SFX%  
  
if !LineNum! EQU !LPF! (  
  
SET /A LineNum=0  
  
SET /A FileNum+=1  
  
)  
  
)  
  
endlocal  
  
Pause  
`
    

Перед запуском настройте переменные:

  • SET BFN — имя исходного CSV (с расширением)
  • SET LPF — число строк в каждой части
  • SET SFN — шаблон имени выходных файлов

Сохраните файл как .bat: в Блокноте выберите Файл > Сохранить как, смените расширение .txt на .bat и подтвердите.

Преимущества метода: простота, автономность, можно запустить на любой Windows‑машине. Ограничения: медленнее для очень больших файлов и чувствителен к особенностям кодировки и разделителям.


3. Разделение через PowerShell

PowerShell эффективнее пакетных файлов и лучше справляется с большими объёмами за счёт встроенных механизмов работы со строковыми массивами и потоковой записи.

Откройте PowerShell (Win + X -> Windows PowerShell или в меню Пуск введите powershell). Скопируйте скрипт ниже и отредактируйте путь к файлу.

        `$InputFilename = Get-Content 'C:\file\location'  
  
$OutputFilenamePattern = 'output_done_'  
  
$LineLimit = 50000  
  
$line = 0  
  
$i = 0  
  
$file = 0  
  
$start = 0  
  
while ($line -le $InputFilename.Length) {  
  
if ($i -eq $LineLimit -Or $line -eq $InputFilename.Length) {  
  
$file++  
  
$Filename = "$OutputFilenamePattern$file.csv"  
  
$InputFilename[$start..($line-1)] | Out-File $Filename -Force  
  
$start = $line;  
  
$i = 0  
  
Write-Host "$Filename"  
  
}  
  
$i++;  
  
$line++  

}
`
    

Примечания:

  • Измените ‘C:\file\location’ на путь к вашему CSV.
  • $LineLimit — число строк в каждом выходном файле.
  • Скрипт создаст файлы output_done_1.csv, output_done_2.csv и т.д. в текущей папке пользователя.

Плюсы PowerShell: гибкость, можно добавить обработку кодировки, фильтрацию строк и логирование. Минусы: требует базовых знаний PowerShell.

сценарий PowerShell для разделения CSV


4. Использование Power Pivot (обход лимита Excel)

Power Pivot в Excel, подключённая большая таблица

Power Pivot позволяет импортировать большие наборы данных в модель данных Excel и анализировать их с помощью сводных таблиц без традиционного ограничения в 1 048 576 строк на листе. Это не разбивает файл физически, но даёт возможность работать с большими объёмами в рамках Excel.

Коротко:

  • Создайте подключение к CSV через «Данные» → «Получить данные» → «Из файла» → «Из текста/CSV».
  • Загрузите данные в модель данных (Load to Data Model).
  • Откройте Power Pivot или создайте Сводную таблицу поверх модели.

Преимущество: вы можете анализировать миллионы строк, не разбивая их на файлы. Недостаток: это требует оперативной памяти и навыков работы с Power Pivot/Power Query.


5. Онлайн‑сервисы: Split CSV и другие

онлайн‑инструмент для разделения CSV

Онлайн‑сервисы, такие как Split CSV, предлагают быстрый способ разделить CSV, указав число строк на файл. Они удобны, когда у вас нет доступа к Windows‑утилитам или требуется быстро получить результат.

Плюсы: не требует установки ПО, часто есть дополнительные опции (удаление дубликатов, смена разделителя, выбор формата). Минусы: риск конфиденциальности — не загружайте личные или чувствительные данные на сторонние сервисы без политики безопасности.

Split CSV хорошо справился с тестовым набором COVID‑19, но результаты зависят от размера файла, соединения и ограничений сервиса.


Как выбрать метод — мини‑методология

  1. Оцените объём и размер файла в МБ/ГБ.
  2. Определите чувствительность данных (можно ли их загружать онлайн?).
  3. Оцените доступные инструменты (есть‑ли PowerShell/Power Pivot/Windows).
  4. Установите цель: просто разбить на части или нужно анализировать внутри Excel.
  5. Выберите метод и протестируйте на небольшом образце.

Пример выбора:

  • Если файл > 1 ГБ и приватность важна — используйте PowerShell или локальную программу.
  • Если нужно быстро и данные публичны — онлайн‑сервис подойдёт.
  • Если нужно анализировать в Excel без разбиения — используйте Power Pivot.

Схема принятия решения

flowchart TD
  A[Есть большой CSV/Excel?] --> B{Данные приватны?}
  B -- Да --> C[Использовать локальные инструменты]
  B -- Нет --> D[Можно использовать онлайн‑сервис]
  C --> E{Требуется автоматизация?}
  E -- Да --> F[PowerShell или .bat]
  E -- Нет --> G[Программа‑разделитель]
  D --> H[Онлайн Split CSV]
  G --> I[Проверить кодировку и разделитель]
  F --> I
  I --> J[Тест на образце]
  J --> K[Выполнить на полном файле]

Когда методы не подходят

  • Файлы слишком большие и превышают объём диска/памяти — нужно работать на сервере или через потоковую обработку (например, Python с итераторами).
  • CSV с неоднородной структурой (многострочные поля, вложенные кавычки) — стандартные сплиттеры могут «сломать» структуру; требуется парсер, учитывающий разделитель и экранирование.
  • Очень чувствительные данные — онлайн‑сервисы и публичные инструменты исключены по соображениям безопасности.

Альтернативы в таких случаях: использовать скрипт на Python (pandas, csv.reader с yield), запускать обработку на сервере с достаточной памятью или подготавливать экспорт из исходной СУБД по частям.


Чек‑лист по ролям

Чек‑лист для аналитика:

  • Оценить число строк и размер файла.
  • Обозначить нужный размер фрагмента (строки/МБ).
  • Проверить кодировку и разделитель.
  • Выбрать инструмент и протестировать на 1000 строк.
  • Выполнить разбиение и проверить первые/последние строки каждого файла.

Чек‑лист для администратора/инженера данных:

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

Чек‑лист для маркетолога/не‑технического пользователя:

  • Решить, можно ли загрузить файл в онлайн‑сервис.
  • Установить желаемое число строк в каждом файле.
  • Сделать резервную копию исходного файла.
  • Проверить несколько выходных файлов в Excel.

Критерии приёмки

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

Безопасность и конфиденциальность

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


Полезные сниппеты и советы

  • Если формат CSV сложный (многострочные поля), используйте парсер, который поддерживает экранирование (например, Python csv.reader или специализированные утилиты).
  • Для автоматизации в Linux/Unix доступна команда split с параметром по числу строк: split -l 10000 input.csv part_. (Примечание: в этой статье основная фокусировка — Windows‑подходы.)

Мини‑шпаргалка по выбору:

  • Скорость и масштаб — PowerShell / местные программы
  • Конфиденциальность — локальные решения
  • Простота — онлайн‑инструменты
  • Анализ в Excel — Power Pivot

Часто задаваемые вопросы

Можно ли в Excel автоматически сохранить файл по частям?

Excel не умеет напрямую разбивать один лист на несколько файлов по числу строк. Для этого используются внешние утилиты, скрипты или загрузка в Power Pivot.

Что делать с кодировкой (UTF‑8, ANSI)?

Проверяйте кодировку исходного CSV. Если выходные файлы открываются с искажёнными символами, конвертируйте в UTF‑8 с BOM или используйте инструмент, который поддерживает нужную кодировку.

Есть ли способ в macOS/Linux?

Да — стандартные утилиты (split, awk) и скрипты на Python удобны в Unix‑системах. Онлайн‑сервисы также доступны независимо от ОС.


Глоссарий (в 1 строку)

CSV: текстовый формат таблицы, значения разделены разделителем (запятая, точка с запятой и т.д.).


Резюме

Выбор метода зависит от объёма данных, чувствительности и требуемой автоматизации. Для быстрых задач подойдёт онлайн‑сервис, для автоматизации и приватности — PowerShell или пакетный файл, а для аналитики внутри Excel — Power Pivot. Всегда тестируйте процесс на небольшом образце и делайте резервные копии исходного файла.

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


Если нужно, могу подготовить готовые скрипты для вашего конкретного CSV (учитывая разделитель и кодировку) или показать пример разбиения на Python для Unix‑систем.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Автоархивация в Google Play: включить и настроить
Android.

Автоархивация в Google Play: включить и настроить

Установка Google Play Store на Windows 11
Инструкции

Установка Google Play Store на Windows 11

Как сменить страну в Google Play
Мобильные приложения

Как сменить страну в Google Play

Как пользоваться Google Play Store на Android
Android.

Как пользоваться Google Play Store на Android

Удалённая установка приложений через Play Store
Android.

Удалённая установка приложений через Play Store

Как скачать книги из Google Books и Play Books
Руководство

Как скачать книги из Google Books и Play Books