CSV или Excel: какой формат выбрать
Что может хранить каждый формат, что теряется при конвертации и когда что выбирать.
Файлы CSV и Excel оба хранят строки и столбцы, и Excel открывает оба, поэтому их легко спутать. Они созданы для разных задач, и неверный выбор вызывает большую часть головной боли с таблицами.
Что представляет собой каждый формат
CSV (значения, разделённые запятыми) это простой текст: каждая строка файла это строка таблицы, а запятые разделяют значения. Никакого форматирования, формул, листов и цветов. Его может прочитать любая программа, в этом весь смысл.
Книга Excel (.xlsx) это структурированный файл, который хранит значения, формулы, форматирование, несколько листов, диаграммы, фильтры и типы данных. Он создан для людей, работающих с данными, и для открытия нужна программа для таблиц.
Рядом друг с другом
| CSV | Excel (.xlsx) | |
|---|---|---|
| Формулы | Нет, только значения | Да |
| Форматирование и цвета | Нет | Да |
| Несколько листов | Нет, одна таблица на файл | Да |
| Ведущие нули и длинные числа | Хранятся в файле, но часто теряются, когда его открывает Excel | Сохраняются, если записаны как текст |
| Открывается в любой программе | Да | Нужна программа для таблиц |
| Принимается инструментами импорта | Почти всегда | Иногда |
| Размер при больших данных | Маленький и простой | Сжат, поддерживает форматирование |
Используйте CSV, когда
- Данные импортируются в другую систему: сервисы рассылок, CRM, бухгалтерские программы, интернет-магазины, базы данных.
- Данные передаются разработчику или скрипту.
- Данные это одна простая таблица, которая должна открываться где угодно.
Конвертируйте книгу через Excel в CSV: он экспортирует каждый лист отдельным CSV и записывает даты в формате, который читает любая система.
Используйте Excel, когда
- Люди будут читать, редактировать, фильтровать данные или строить по ним диаграммы.
- Нужны формулы, несколько листов или форматирование.
- В данных есть коды с ведущими нулями, которые должны пережить открытие.
Превратите выгрузку в полноценную книгу через CSV в Excel: он сохраняет коды текстом и сам определяет разделитель.
Что теряется при конвертации в CSV
Формулы становятся своими текущими значениями, форматирование исчезает, а каждый лист становится отдельным файлом. Обычно это именно то, что нужно инструменту импорта, но сохраните исходную книгу, если будете её ещё править.
Проблема запятой в Европе и России
В большей части Европы и в России запятая служит десятичным разделителем, поэтому местный Excel сохраняет CSV с точкой с запятой между значениями. Тогда CSV с запятыми открывается одним длинным столбцом, а CSV с точками с запятой сбивает инструменты импорта, которые ждут запятых. Оба конвертера позволяют выбрать разделитель, а CSV в Excel определяет его автоматически.
А JSON?
Если данные идут на сайт, в приложение или сервис автоматизации, разработчику чаще всего нужен JSON. CSV в JSON превращает строку заголовков в имена свойств.